website-builder

byPiyush Raj

You are a senior product designer and front-end engineer building "Craftly": an original, natural-language website builder for students, creators, freelancers and small businesses. Work autonomously. Don't ask questions; make reasonable decisions and log them in README.md under "Decisions". STACK (fixed): React 18, Vite, Tailwind CSS, React Router, lucide-react, plain JavaScript (JSX). No other runtime dependencies. Google Fonts via <link> with system fallbacks. public/_redirects containing "/* /index.html 200". BRAND: Name Craftly. Tagline "Turn a clear idea into a working website." Voice: helpful, calm, plain, short sentences. Banned words: revolutionary, magic, instant, effortless, seamless, supercharge, unlock. No fake stats, logos, reviews or user counts. Mention AI only once, honestly, in the Responsible section. DESIGN TOKENS Colors: bg #FAF7F2 | surface #FFFFFF | sand #EDE6DA | line #E3DDD1 | muted #6B6B66 | ink #1F2321 forest-700 #1F4D3A (primary) | forest-800 #173B2C (hover) | forest-50 #E8F0EB action #D9622B (ONLY the single most important CTA per screen) | error #B3261E | success #2E7D4F All text/background pairs pass WCAG AA. Type: headings Fraunces 600; body/UI Inter 400/500/600. Scale 12/14/16/18/22/30/44/60. Line-height 1.5 body, 1.1 headings. Max 65ch. Layout: 12-col grid, max-width 1200px, gutter 24px (16px mobile), 4px spacing multiples, section padding 96px desktop / 56px mobile. Shape: radius 8px (inputs, buttons), 12px (panels). 1px borders in `line`. One shadow: 0 1px 2px rgba(31,35,33,.06), 0 4px 12px rgba(31,35,33,.05). Motion: 150ms color/opacity only. Respect prefers-reduced-motion. Focus: 2px forest outline, 2px offset, on every interactive element. Icons: lucide-react only, stroke 1.75, sizes 16/20. Forbidden visuals: gradients, glow, glassmorphism, emojis, stock photos, card-on-card nesting. Product visuals are real HTML/CSS UI, not images. ENGINEERING RULES - Folders: src/{components/ui,components,pages,layouts,data/templates,lib,hooks,context,styles}. One component per file. - Every page: semantic landmarks, one h1, <title> + meta description, keyboard operable. - No console errors/warnings, no unused imports/files, no dead links, no no-op buttons, no placeholder text, no raw errors shown to users. - All localStorage reads/writes wrapped in try/catch. Keys: craftly:v1:* - After finishing a phase: run `npm run build`, fix everything, then reply with the REPORT format below. REPORT FORMAT (end of every phase) 1) Files created/changed. 2) How I verified (commands, widths 360/768/1280). 3) Known issues. 4) "Ready for next phase: yes/no".

LandingLoginResponsibleSite EditorSign UpMy SitesPublishNew Site
Landing

Comments (0)

No comments yet. Be the first!

Project Tasks

64 planning tasks
#1

Generate system requirement document

1m 24s0.2 cr used
Done
#2

Generate personas & user flows

0m 55s0.2 cr used
Done
#7

Create flow for Student creator

0m 54sCredits in parent
Done
#8

Create flow for Independent creator

0m 54sCredits in parent
Done
#9

Create flow for Freelancer

0m 54sCredits in parent
Done
#10

Create flow for Small business owner

0m 54sCredits in parent
Done
#11

Landing

3m 49sCredits in subtasks
Done
#26

Fix Landing review findings: frontend/src/components/Landing Hero.jsx and… (+1 more)

1m 31s0.4 cr used
Done
#19

Landing / Masthead

0m 22s0.85 cr used
Done
#20

Landing / Hero

0m 25s0.85 cr used
Done
#21

Landing / Feature Band

0m 24s0.85 cr used
Done
#22

Landing / Closing Action

0m 23s0.85 cr used
Done
#23

Landing / Footer

0m 17s0.85 cr used
Done
#24

Craftly Masthead

0m 22sCredits in parent
Done
#25

Craftly Footer

0m 17sCredits in parent
Done
#12

Login

2m 40sCredits in subtasks
Done
#35

Fix Login review finding: An empty form-error alert is rendered on desktop, tablet…

0m 57s0.4 cr used
Error
#27

Login / Masthead

0m 0s0.85 cr used
Done
#28

Login / Auth Panel

0m 25s0.85 cr used
Done
#29

Login / Closing Band

0m 17s0.85 cr used
Done
#30

Login / Footer

0m 0s0.85 cr used
Done
#13

Responsible

2m 4sCredits in subtasks
Done
#31

Responsible / Masthead

0m 0s0.85 cr used
Done
#32

Responsible / Content

0m 15s0.85 cr used
Done
#33

Responsible / Closing Band

0m 17s0.85 cr used
Done
#34

Responsible / Footer

0m 1s0.85 cr used
Done
#14

Sign Up

3m 44sCredits in subtasks
Done
#45

Fix Sign Up review finding: An empty error region is visibly rendered as a…

0m 14s0.4 cr used
Done
#36

Sign Up / Masthead

0m 0s0.85 cr used
Done
#37

Sign Up / Auth Panel

0m 49s0.85 cr used
Done
#38

Sign Up / Closing Band

0m 21s0.85 cr used
Done
#39

Sign Up / Footer

0m 0s0.85 cr used
Done
#15

My Sites

5m 38sCredits in subtasks
Done
#46

Fix My Sites review findings: frontend/src/components/My Sites Ledger.jsx: the error… (+1 more)

0m 58s0.4 cr used
Done
#40

My Sites / Masthead

0m 0s0.85 cr used
Done
#41

My Sites / Heading

0m 14s0.85 cr used
Done
#42

My Sites / Ledger

1m 0s0.85 cr used
Done
#43

My Sites / Closing Band

0m 20s0.85 cr used
Done
#44

My Sites / Footer

0m 0s0.85 cr used
Done
#16

New Site

16m 6sCredits in subtasks
Done
#66

Fix New Site review findings: Q1 as reviewed now… (+4 more)

1m 48s0.4 cr used
Done
#62

Fix New Site review findings: frontend/src/components/New Site Generated Preview Band.jsx… (+2 more)

3m 4s0.4 cr used
Done
#47

New Site / Masthead

0m 0s0.85 cr used
Done
#48

New Site / Heading

0m 13s0.85 cr used
Done
#49

New Site / Creation Band

0m 56s0.85 cr used
Done
#50

New Site / Generated Preview Band

0m 43s0.85 cr used
Done
#51

New Site / Footer

0m 0s0.85 cr used
Done
#17

Site Editor

14m 13sCredits in subtasks
Done
#65

Fix Site Editor review findings: The sticky save toolbar overlays and obscures the page… (+2 more)

0m 47s0.4 cr used
Done
#63

Fix Site Editor Workspace.jsx: Cannot read properties of null (reading 'name')

0m 16s0.4 cr used
Done
#52

Site Editor / Masthead

0m 1s0.85 cr used
Done
#53

Site Editor / Heading

0m 14s0.85 cr used
Done
#54

Site Editor / Workspace

1m 38s0.85 cr used
Done
#55

Site Editor / Closing Band

0m 21s0.85 cr used
Done
#56

Site Editor / Footer

0m 0s0.85 cr used
Done
#18

Publish

13m 16sCredits in subtasks
Done
#64

Fix Publish review findings: frontend/src/components/Publish Workspace.jsx: the selected… (+2 more)

2m 33s0.4 cr used
Done
#57

Publish / Masthead

0m 0s0.85 cr used
Done
#58

Publish / Heading

0m 14s0.85 cr used
Done
#59

Publish / Workspace

1m 27s0.85 cr used
Done
#60

Publish / Closing Band

0m 20s0.85 cr used
Done
#61

Publish / Footer

0m 0s0.85 cr used
Done
#5

Architecture

0.2 cr needed
Backlog
#6

Workspace task plan

0.2 cr needed
Backlog
Landing design preview
Landing: Read what Craftly does
Landing: Choose Start a site
Responsible: Read the AI statement
Responsible: Choose Start a site
Sign Up: Enter email and password
Sign Up: 1. Create account
Sign Up: 2. Correct flagged field and resubmit
Login: Enter email and password
Login: 1. Log in
Login: 2. Correct credentials and resubmit
New Site: 1. Describe services and contact
New Site: 2. Build site
New Site: 3. Revise description and build again
New Site: 4. Check client questions covered
Site Editor: 5. Select page and edit content
Site Editor: 6. Save changes
Site Editor: 7. Retry save with edits kept
Publish: 8. Check pages and publish state
Publish: 9. Publish the client-facing site
Publish: 10. Retry publishing
Publish: 11. Copy address for clients
My Sites: 12. View sites and publish state
My Sites: 13. Retry loading sites
My Sites: 14. Open site in editor
My Sites: 15. Open site to publish
My Sites: 16. Start another site
Landing design preview
Landing: Read what Craftly does
Landing: Choose Start a site
Responsible: Read the AI statement
Responsible: Choose Start a site
Sign Up: Enter email and password
Sign Up: 1. Create account
Sign Up: 2. Correct flagged field and resubmit
Login: Enter email and password
Login: 1. Log in
Login: 2. Correct credentials and resubmit
New Site: 1. Describe services and contact
New Site: 2. Build site
New Site: 3. Revise description and build again
New Site: 4. Check client questions covered
Site Editor: 5. Select page and edit content
Site Editor: 6. Save changes
Site Editor: 7. Retry save with edits kept
Publish: 8. Check pages and publish state
Publish: 9. Publish the client-facing site
Publish: 10. Retry publishing
Publish: 11. Copy address for clients
My Sites: 12. View sites and publish state
My Sites: 13. Retry loading sites
My Sites: 14. Open site in editor
My Sites: 15. Open site to publish
My Sites: 16. Start another site