This guide walks through building a static website using the website-pipeline.
- Node.js 18+
- Claude Code installed
- AppFactory repository cloned
cd /path/to/AppFactory/website-pipelineVerify you're in the right directory:
pwd
# Should show: .../AppFactory/website-pipelineclaudeTell Claude what you want. Be as detailed or as brief as you like.
Build me a portfolio website
Build me a portfolio website for a photographer. Include:
- A gallery page with lightbox
- An about page with bio
- A contact form
- Dark mode support
- Mobile-responsive design
Both work. The system fills in details for minimal descriptions.
Claude will normalize your intent and show a plan:
[PHASE 0: INTENT NORMALIZATION]
Upgrading "portfolio website" to:
"A professional portfolio website for creative work with:
- Hero section with featured projects
- Gallery with category filtering and lightbox
- About page with bio, skills, and timeline
- Contact form with validation
- Dark/light mode toggle
- Mobile-first responsive design
- SEO optimization
- Performance optimization"
[PHASE 1: PLANNING]
Milestones:
- M1: Scaffold Next.js project
- M2: Create page layouts
- M3: Implement gallery features
- M4: Add contact functionality
- M5: Polish and accessibility
- M6: Generate documentation
Proceed? (yes/no)
Type yes to proceed or request changes.
The system generates your website through multiple phases:
[BUILDING]
M1: Scaffold ✓
M2: Pages ✓
M3: Features ✓
M4: Contact ✓
M5: Polish ✓
M6: Documentation ✓
[RALPH QA]
Pass 1: 92% (fixing accessibility issues)
Pass 2: 97% - PASS
BUILD COMPLETE
Your website appears in:
website-pipeline/website-builds/<site-name>/
cd website-pipeline/website-builds/<site-name>
npm install
npm run devOpen http://localhost:3000 in your browser.
Instead of running commands manually, use VS Code tasks:
- Open Command Palette:
Cmd+Shift+P/Ctrl+Shift+P - Type:
Tasks: Run Task - Select:
Factory: Preview (Auto)
The preview system:
- Detects your project type
- Runs the dev server
- Discovers the URL
- Writes it to
.vscode/.preview/PREVIEW.json
Then use Factory: Preview (Open Browser) to open in your browser.
Your generated website:
website-builds/<site-name>/
├── package.json
├── next.config.js
├── tailwind.config.js
├── src/
│ ├── app/
│ │ ├── layout.tsx ← Root layout
│ │ ├── page.tsx ← Home page
│ │ ├── about/page.tsx ← About page
│ │ ├── gallery/page.tsx ← Gallery page
│ │ └── contact/page.tsx ← Contact page
│ ├── components/
│ │ ├── Header.tsx
│ │ ├── Footer.tsx
│ │ ├── Gallery.tsx
│ │ └── ...
│ └── lib/
│ └── utils.ts
├── public/
│ └── images/
├── README.md
└── RUNBOOK.md
Edit tailwind.config.js or component files:
// tailwind.config.js
module.exports = {
theme: {
extend: {
colors: {
primary: '#your-color',
},
},
},
};Create new files in src/app/:
src/app/services/page.tsx ← Creates /services route
Replace placeholder images in public/images/.
Edit text content in page components.
cd website-pipeline/website-builds/<site-name>
npx vercelFollow the prompts to deploy.
The generated site is standard Next.js. It deploys to:
- Netlify
- AWS Amplify
- Cloudflare Pages
- Any Node.js hosting
npm install --legacy-peer-depsPORT=3001 npm run devCheck the terminal output. Common causes:
- Missing environment variables
- TypeScript type errors
- Preview Output - Learn the preview system
- Build a dApp - Add dynamic features
- Troubleshooting - Problem solving
Back to: Index