This skill provides structured knowledge for building full-stack applications from scratch or enhancing existing projects. It covers project detection, tech stack selection, scaffolding patterns, implementation planning, and feature building.
KeywordsProject TypeRecommended Stackblog, post, articleBlogNext.js Statice-commerce, product, cart, paymentE-commerceNext.js + Stripedashboard, panel, managementAdmin DashboardNext.js + Supabaseapi, backend, service, restAPI ServiceExpress or FastAPIpython, fastapi, djangoPython APIFastAPImobile, android, ios, react nativeMobile AppReact Native (Expo)portfolio, personal, cvPortfolioNext.js Staticcrm, customer, salesCRMNext.js + Supabasesaas, subscription, stripeSaaSNext.js + Stripe + Authlanding, promotional, marketingLanding PageNext.js Staticextension, plugin, chromeBrowser ExtensionChrome MV3cli, command line, terminalCLI ToolNode.js
text
1. Tokenize user request
2. Extract keywords and match to project type
3. Identify missing information → ask clarifying questions
4. Suggest appropriate tech stack
5. Confirm with user before proceeding
yaml
Frontend:
framework: Next.js 16 (Stable)
language: TypeScript 5.7+
styling: Tailwind CSS v4
state: React 19 Actions / Server Components
bundler: Turbopack (Dev Mode)
Backend:
runtime: Node.js 23
framework: Next.js API Routes
validation: Zod
Database:
primary: PostgreSQL
provider: Supabase
orm: Prisma
Auth:
provider: Supabase Auth or Clerk
Deployment:
tool: Built-in deploy command
NeedDefaultAlternativeReal-timeSupabase RealtimeSocket.ioFile storageSupabase StorageCloudinary, S3PaymentStripeLemonSqueezy, PaddleEmailResendSendGridSearch-Algolia, Typesense
text
project-name/
├── src/
│ ├── app/ # Routes only (thin layer)
│ │ ├── layout.tsx
│ │ ├── page.tsx
│ │ ├── globals.css
│ │ ├── (auth)/ # Route group - auth pages
│ │ │ ├── login/page.tsx
│ │ │ └── register/page.tsx
│ │ ├── (dashboard)/ # Route group - dashboard
│ │ │ ├── layout.tsx
│ │ │ └── page.tsx
│ │ └── api/
│ │ └── [resource]/route.ts
│ │
│ ├── features/ # Feature-based modules
│ │ ├── auth/
│ │ │ ├── components/
│ │ │ ├── hooks/
│ │ │ ├── actions.ts # Server Actions
│ │ │ ├── queries.ts # Data fetching
│ │ │ └── types.ts
│ │ └── [other-features]/
│ │
│ ├── shared/ # Shared utilities
│ │ ├── components/ui/ # Reusable UI components
│ │ ├── lib/ # Utils, helpers
│ │ └── hooks/ # Global hooks
│ │
│ └── server/ # Server-only code
│ ├── db/ # Database client
│ ├── auth/ # Auth config
│ └── services/ # External API integrations
│
├── prisma/
│ ├── schema.prisma
│ └── seed.ts
│
├── public/
├── .env.example
├── package.json
├── tailwind.config.ts
└── tsconfig.json
PrincipleImplementationFeature isolationEach feature in features/ with its own components, hooks, actionsServer/Client separationServer-only code in server/, prevents accidental client importsThin routesapp/ only for routing, logic lives in features/Route groups(groupName)/ for layout sharing without URL impactShared codeshared/ for truly reusable UI and utilities
json
{
"compilerOptions": {
"paths": {
"@/*": ["./src/*"],
"@/features/*": ["./src/features/*"],
"@/shared/*": ["./src/shared/*"],
"@/server/*": ["./src/server/*"]
}
}
}
When planning a new project or feature, follow this structured approach before writing any code.
When presenting a plan to the user, use this structure:
markdown
# Implementation Plan: [Project Name]
## Overview
[Brief description of what will be built]
## Data Models
- Model1: [fields and relationships]
- Model2: [fields and relationships]
## API Routes / Server Actions
- POST /api/resource - [description]
- GET /api/resource - [description]
## Pages & Components
- /page-name
- ComponentA
- ComponentB
## Implementation Order
1. [ ] Database schema
2. [ ] API routes / server actions
3. [ ] UI components
4. [ ] Integration & wiring
5. [ ] Testing & error fixing
## Dependencies
- [package1]
- [package2]
text
Request: "[user feature request]"
Analysis:
├── Required Changes:
│ ├── Database: [tables/columns needed]
│ ├── Backend: [API routes/actions needed]
│ ├── Frontend: [components/pages needed]
│ └── Config: [environment variables needed]
│
├── Dependencies:
│ ├── [npm packages]
│ └── [existing features required]
│
└── Implementation Steps:
1. [Step 1]
2. [Step 2]
...
text
1. Analyze existing project structure
2. Create detailed change plan
3. Present plan to user for approval
4. Get confirmation
5. Apply changes incrementally
6. Test after each change
7. Deploy and show preview
Error TypeSolution StrategyTypeScript ErrorFix type, add missing importMissing DependencyInstall with npm/pnpmBuild ErrorCheck syntax, verify importsDatabase ErrorCheck schema, validate migrationsRuntime ErrorDebug logic, check API responses
text
1. Detect error from build/runtime output
2. Attempt automatic fix
3. If failed, report to user with context
4. Suggest alternative approach
5. Rollback if necessary (git)
text
1. ANALYZE → Understand user request, detect project type
2. PLAN → Create detailed implementation plan, get user approval
3. BUILD → Scaffold structure, implement features (database → backend → frontend)
4. TEST → Run build, verify functionality, fix errors
5. DEPLOY → Deploy application and provide URL
PhaseFocusCheckpoint1. AnalysisUnderstand requirementsClear spec confirmed2. PlanningCreate implementation planPlan approved by user3. DatabaseSchema design, migrationsSchema created4. BackendAPI routes, server actionsEndpoints working5. FrontendComponents, pages, stylingUI complete6. TestingBuild check, error fixingBuild passes7. DeploymentDeploy to productionLive URL provided