An AI-powered website generator: describe what you want in plain language, and the system produces a complete, styled HTML page with real stock photos. Preview it instantly, iterate with refinement prompts, and download the result.
- Prompt → website: enter a description, get a full responsive HTML page with Tailwind CSS, real stock images, and photo credits.
- Iterate: after generation, describe changes ("make the hero larger", "change colors to blue") and the AI modifies your existing page.
- Preview: live iframe preview with fullscreen and open-in-new-tab options.
- Export: one-click HTML download of any generated site.
- Accounts: sign in to save, revisit, and manage your projects.
| Layer | Choice |
|---|---|
| App framework | Next.js 16 (App Router), React 19 |
| Language | TypeScript |
| Styling | Tailwind CSS v4 |
| Package manager | pnpm 10.x (Corepack-pinned) |
| Database | PostgreSQL via Prisma 7 + @prisma/adapter-pg |
| Job queue | BullMQ + Redis |
| AI | Anthropic SDK (Claude) |
| Images | Unsplash, Pexels, Pixabay (cascade) |
| Storage | Cloudflare R2 (S3-compatible) |
| Auth | Auth.js v5 (credentials + OAuth) |
- Node.js 20+ (for Corepack)
- PostgreSQL — local or hosted (e.g. Neon)
- Redis — local (
redis-serveror Docker) or hosted (e.g. Upstash) - Cloudflare R2 bucket — dash.cloudflare.com → R2
- Anthropic API key — console.anthropic.com
# 1. Enable Corepack (once per machine)
corepack enable
# 2. Install dependencies (runs prisma generate via postinstall)
pnpm install
# 3. Configure environment
cp .env.example .env
# Edit .env — set DATABASE_URL, REDIS_URL, ANTHROPIC_API_KEY,
# R2_ACCOUNT_ID, R2_ACCESS_KEY_ID, R2_SECRET_ACCESS_KEY, R2_BUCKET_NAME,
# AUTH_SECRET
# 4. Push schema to database
pnpm db:push
# 5. Start dev server + worker (single command)
pnpm devOpen http://localhost:3000. Health check: http://localhost:3000/api/health?deep=true.
| Command | Purpose |
|---|---|
pnpm dev |
Dev server + BullMQ worker (both processes) |
pnpm build |
Production build |
pnpm start |
Start production server |
pnpm lint |
ESLint |
pnpm worker:generate |
Run BullMQ worker standalone (if not using pnpm dev) |
pnpm db:generate |
Regenerate Prisma client |
pnpm db:push |
Push schema to DB (no migration files) |
pnpm db:migrate |
Create/apply migrations (prisma migrate dev) |
pnpm db:studio |
Open Prisma Studio |
Unknown options: 'allow-build' — Your global pnpm is too old. This repo pins pnpm 10.x:
corepack enable
corepack use pnpm@10.15.1
pnpm install- Stuck at "Starting..." — The BullMQ worker may not be running.
pnpm devstarts both the server and worker; check that Redis is reachable. ECONNRESETwith Upstash — See.env.examplefor TLS and timeout configuration. TryREDIS_FAMILY=4for IPv6 issues. For local dev, plainredis://localhost:6379is simplest.
Normal for full-page generation with Claude Sonnet. The progress bar updates as the model streams. For faster (simpler) results, set ANTHROPIC_MODEL=claude-haiku-4-5-20251001 in .env.