Primary guidance is in AGENTS.md. Read that first. This file contains Claude Code-specific additions only.
Always use Bun — never npm, yarn, or pnpm:
bun install # Install dependencies
bun run dev # Watch + compile Tailwind CSS
bun run build # One-time build
bun add <package> # Add a dependency
bun remove <package> # Remove a dependencyThis project has skills in .agents/skills/ that Claude should apply automatically:
| Skill | When to Apply |
|---|---|
.agents/skills/fexend/ |
Creating or modifying any HTML, CSS, or Alpine.js in this project |
.agents/skills/tailwind-patterns/ |
Configuring Tailwind v4 or writing utility classes |
.agents/skills/tailwind-design-system/ |
Building new components or updating the design system |
.agents/skills/frontend-design/ |
Designing new page layouts or visual treatments |
.agents/skills/ui-ux-pro-max/ |
UX reviews, accessibility audits, chart/palette selection |
.agents/skills/clean-code/ |
Code review, refactoring, naming conventions |
When working on rewrite tasks (see AGENTS.md Rewrite Plan):
- Check
AGENTS.mdfor current phase and status - Update the checkbox in
AGENTS.mdwhen a task is completed - Use
src/dashboard.htmlas the page boilerplate reference (navbar + sidebar + loading screen) - Test dark mode manually for every change
- Use
bun run devto watch for CSS changes during development
- Read
AGENTS.mdfirst before any task in this project - Do not use npm — always use
bun - Do not add raw hex colors — use
@themetokens - Do not create inline
<style>blocks unless it's for loading screen FOUC prevention - Always include dark mode variants for new CSS classes
- Prefer editing existing files over creating new ones
- Do not add comments unless logic is non-obvious
- Never style bare
input,select,textarea,labelelements — use.input,.label,.select,.textareaopt-in classes
Add a new UI component:
# 1. Create the CSS
touch src/css/components/<name>.css
# 2. Import in components.css
echo '@import "./components/<name>.css";' >> src/css/components.css
# 3. Create the HTML showcase page
cp src/dashboard.html src/components/<name>.htmlAdd a new form element:
# 1. Create the CSS (use opt-in classes — no bare element selectors)
touch src/css/forms/<name>.css
# 2. Import in forms.css
echo '@import "./forms/<name>.css";' >> src/css/forms.css
# 3. Create the HTML showcase
cp src/dashboard.html src/elements/<name>.htmlAdd a third-party library theme:
# 1. Create the CSS
touch src/css/libs/<name>.css
# 2. Import in libs.css
echo '@import "./libs/<name>.css";' >> src/css/libs.cssCompile CSS + JS:
bun run dev # watches both CSS (→ public/css/app.css) and JS (→ public/js/app.js)Check what exists:
ls src/components/ # UI component HTML pages
ls src/elements/ # Form/element HTML pages
ls src/css/components/ # UI component CSS
ls src/css/forms/ # Form element CSS
ls src/css/libs/ # Library CSSNew layout/utility CSS:
# Layouts go in src/css/layouts/<name>.css — import in src/css/layouts.css
# Utilities go in src/css/utilities/<name>.css — import in src/css/utilities.css