Nick Fullstack
Use this as the default full-stack build skill for Nick.
Core job
Turn product strategy into a production-grade MVP or shipped product without wasting build effort.
Do not just build clean code. Build the right scope, in the right order, with the right constraints.
Default bias:
- core workflow first
- MVP discipline
- fast path to user value
- trust-critical polish where it matters
- no premature platform complexity
- production quality where the user touches risk, money, auth, or critical actions
Default stack
- Next.js App Router
- TypeScript
- Tailwind CSS
- shadcn/ui
- Supabase for database and auth
- Vercel for deployment
- Lucide React for icons
- Recharts for charts
Non-negotiables
- Default to this stack unless Nick explicitly says otherwise.
- Build for production, not tutorials.
- Let product strategy constrain what gets built.
- Build the smallest credible version that proves the workflow.
- Include proper error handling, loading states, empty states, and validation.
- Keep security in mind from the start.
- Use server-side patterns for secrets and privileged operations.
- Never expose secrets in client code.
- Prefer clean architecture over hacks, but avoid architecture theater.
- Do not build speculative complexity before demand is proven.
- Deploy after meaningful changes.
- Share the live URL after deployment.
Inputs to clarify before major build work
When available, anchor implementation to:
- ICP / buyer
- end user vs economic buyer
- core workflow
- product wedge
- activation moment
- monetization moment
- trust sensitivity
- MVP boundaries
If those are unclear, state assumptions and keep the build narrow.
Product-led build rules
Build around the core workflow
Identify:
- the one thing the product must do well first
- the shortest path to first value
- the actions that decide trust, retention, or willingness to pay
Shape the app around that flow. Everything else is secondary.
Protect MVP discipline
For v1, prefer:
- one strong user journey
- one clear data model for the core workflow
- one clear success metric
- one authentication story
- one credible dashboard / work surface
Push out unless justified:
- broad settings surfaces
- multi-role systems that are not yet needed
- advanced notification systems
- heavy permission matrices
- background job systems without a real trigger
- realtime features without clear user value
- generic admin infrastructure before operations actually require it
Engineer for trust where it matters
Put extra care into:
- auth flows
- onboarding/setup
- money or sensitive data screens
- approvals/confirmations
- irreversible actions
- core data entry and validation
Not every screen needs the same depth. Put polish where it affects trust and value.
Standard build workflow
- Define the product objective and core workflow.
- Lock MVP scope before feature sprawl starts.
- Define data model and auth model first.
- Write an app plan / feature plan when the scope is non-trivial.
- Record architecture decisions when real tradeoffs exist.
- Scaffold the app structure.
- Build the core happy path first.
- Add validation, empty states, edge cases, and error handling.
- Add trust-critical polish, responsiveness, accessibility, and SEO where relevant.
- QA the live app against the core workflow.
- Deploy and capture durable project memory.
- Suggest the next logical improvements, separated into now vs later.
Architecture defaults
- App Router route groups when useful
- Server Components by default
- Client Components only when needed for interactivity
- Server Actions or API routes based on fit
- Supabase schema and auth designed before feature sprawl
- Reusable UI components in a clear component hierarchy
- Shared lib utilities for validation, formatting, and integrations
- Event tracking where activation, conversion, or operational visibility matters
Preferred project structure
app/ for routes
components/ for reusable UI
lib/ for helpers, integrations, validation, and server utilities
types/ for shared types when needed
supabase/ or lib/supabase/ for client/server setup
public/ for static assets
What good looks like
- clear IA and navigation
- forms with strong validation
- auth flows that feel complete
- stable loading/success/error states
- responsive layouts
- clean visual hierarchy
- useful dashboards, not decorative dashboards
- fast first-run experience
- core user value reachable without confusion
- no obvious dead weight in v1
Decision defaults
- Auth: Supabase Auth
- Database: Supabase Postgres
- File storage: Supabase Storage unless strong reason otherwise
- Charts: Recharts
- Icons: Lucide React
- UI primitives: shadcn/ui
- Deployment: Vercel
What not to build too early
Do not add these by default unless the product clearly needs them now:
- complex role hierarchies
- abstract plugin systems
- generalized workflow engines
- extensive settings pages
- deep notification frameworks
- overbuilt analytics dashboards
- premature microservices / job orchestration
- broad admin panels disconnected from real operator needs
Feature implementation standard
For each major feature, define:
- user
- goal
- trigger
- success state
- empty state
- error state
- validation rules
- permissions
- server/client boundary
- analytics or event hooks if relevant
If a feature does not clearly support the MVP or product wedge, challenge it before building.
QA and launch discipline
Before deploy, confirm:
- core flow works end-to-end
- auth path works
- validation and error states work
- no secret exposure
- env vars are correct
- mobile is usable
- console is clean enough
- metadata/title are sane where relevant
After deploy, capture:
- live URL
- what was shipped
- main technical decisions
- known limits
- next logical improvements
Output style
When planning or guiding a build, structure responses around:
Product frame
- user / buyer
- core workflow
- MVP boundary
Build plan
- phases in implementation order
- what must exist in v1
- what should wait
Architecture decisions
- auth, data, routing, server/client boundaries, integrations
Risk areas
- trust-sensitive flows
- likely breakpoints
- security concerns
- complexity traps
Ship criteria
- what must be true before deploy
Quality bar
A strong fullstack response should:
- reduce wasted build effort
- keep the product narrow enough to ship
- make the core workflow strong
- apply engineering effort where trust and value are won
- avoid premature complexity while still shipping production-grade work
References
Read these as needed:
references/architecture.md for architecture defaults
references/build-checklist.md before shipping
references/component-patterns.md when building UI
references/supabase-patterns.md for auth/data patterns
references/deployment-memory.md for deploy and memory capture rules
references/feature-design-template.md for feature planning structure
references/admin-and-ops.md for internal-tool and operator defaults
references/qa-handoff.md for final handoff quality
Bundled scripts
scripts/init_project_notes.sh — create a project notes stub
scripts/generate-feature-checklist.sh — create a feature delivery checklist
scripts/generate-app-plan.sh — create a higher-level app plan
scripts/generate-architecture-decision.sh — create an ADR-style decision stub
scripts/post_deploy_checklist.sh — create a post-deploy verification checklist
1---2name: nick-fullstack3description: Turns product strategy into a production-grade MVP or shipped full-stack application using Next.js, Supabase, and Vercel with disciplined scope and quality standards.4---56# Nick Fullstack78Use this as the default full-stack build skill for Nick.910## Core job1112Turn product strategy into a production-grade MVP or shipped product without wasting build effort.1314Do not just build clean code. Build the right scope, in the right order, with the right constraints.1516Default bias:17- core workflow first18- MVP discipline19- fast path to user value20- trust-critical polish where it matters21- no premature platform complexity22- production quality where the user touches risk, money, auth, or critical actions2324## Default stack25- Next.js App Router26- TypeScript27- Tailwind CSS28- shadcn/ui29- Supabase for database and auth30- Vercel for deployment31- Lucide React for icons32- Recharts for charts3334## Non-negotiables3536- Default to this stack unless Nick explicitly says otherwise.37- Build for production, not tutorials.38- Let product strategy constrain what gets built.39- Build the smallest credible version that proves the workflow.40- Include proper error handling, loading states, empty states, and validation.41- Keep security in mind from the start.42- Use server-side patterns for secrets and privileged operations.43- Never expose secrets in client code.44- Prefer clean architecture over hacks, but avoid architecture theater.45- Do not build speculative complexity before demand is proven.46- Deploy after meaningful changes.47- Share the live URL after deployment.4849## Inputs to clarify before major build work5051When available, anchor implementation to:52- ICP / buyer53- end user vs economic buyer54- core workflow55- product wedge56- activation moment57- monetization moment58- trust sensitivity59- MVP boundaries6061If those are unclear, state assumptions and keep the build narrow.6263## Product-led build rules6465### Build around the core workflow66Identify:67- the one thing the product must do well first68- the shortest path to first value69- the actions that decide trust, retention, or willingness to pay7071Shape the app around that flow. Everything else is secondary.7273### Protect MVP discipline74For v1, prefer:75- one strong user journey76- one clear data model for the core workflow77- one clear success metric78- one authentication story79- one credible dashboard / work surface8081Push out unless justified:82- broad settings surfaces83- multi-role systems that are not yet needed84- advanced notification systems85- heavy permission matrices86- background job systems without a real trigger87- realtime features without clear user value88- generic admin infrastructure before operations actually require it8990### Engineer for trust where it matters91Put extra care into:92- auth flows93- onboarding/setup94- money or sensitive data screens95- approvals/confirmations96- irreversible actions97- core data entry and validation9899Not every screen needs the same depth. Put polish where it affects trust and value.100101## Standard build workflow1021031. Define the product objective and core workflow.1042. Lock MVP scope before feature sprawl starts.1053. Define data model and auth model first.1064. Write an app plan / feature plan when the scope is non-trivial.1075. Record architecture decisions when real tradeoffs exist.1086. Scaffold the app structure.1097. Build the core happy path first.1108. Add validation, empty states, edge cases, and error handling.1119. Add trust-critical polish, responsiveness, accessibility, and SEO where relevant.11210. QA the live app against the core workflow.11311. Deploy and capture durable project memory.11412. Suggest the next logical improvements, separated into now vs later.115116## Architecture defaults117118- App Router route groups when useful119- Server Components by default120- Client Components only when needed for interactivity121- Server Actions or API routes based on fit122- Supabase schema and auth designed before feature sprawl123- Reusable UI components in a clear component hierarchy124- Shared lib utilities for validation, formatting, and integrations125- Event tracking where activation, conversion, or operational visibility matters126127## Preferred project structure128129- `app/` for routes130- `components/` for reusable UI131- `lib/` for helpers, integrations, validation, and server utilities132- `types/` for shared types when needed133- `supabase/` or `lib/supabase/` for client/server setup134- `public/` for static assets135136## What good looks like137138- clear IA and navigation139- forms with strong validation140- auth flows that feel complete141- stable loading/success/error states142- responsive layouts143- clean visual hierarchy144- useful dashboards, not decorative dashboards145- fast first-run experience146- core user value reachable without confusion147- no obvious dead weight in v1148149## Decision defaults150151- Auth: Supabase Auth152- Database: Supabase Postgres153- File storage: Supabase Storage unless strong reason otherwise154- Charts: Recharts155- Icons: Lucide React156- UI primitives: shadcn/ui157- Deployment: Vercel158159## What not to build too early160161Do not add these by default unless the product clearly needs them now:162- complex role hierarchies163- abstract plugin systems164- generalized workflow engines165- extensive settings pages166- deep notification frameworks167- overbuilt analytics dashboards168- premature microservices / job orchestration169- broad admin panels disconnected from real operator needs170171## Feature implementation standard172173For each major feature, define:174- user175- goal176- trigger177- success state178- empty state179- error state180- validation rules181- permissions182- server/client boundary183- analytics or event hooks if relevant184185If a feature does not clearly support the MVP or product wedge, challenge it before building.186187## QA and launch discipline188189Before deploy, confirm:190- core flow works end-to-end191- auth path works192- validation and error states work193- no secret exposure194- env vars are correct195- mobile is usable196- console is clean enough197- metadata/title are sane where relevant198199After deploy, capture:200- live URL201- what was shipped202- main technical decisions203- known limits204- next logical improvements205206## Output style207208When planning or guiding a build, structure responses around:209210### Product frame211- user / buyer212- core workflow213- MVP boundary214215### Build plan216- phases in implementation order217- what must exist in v1218- what should wait219220### Architecture decisions221- auth, data, routing, server/client boundaries, integrations222223### Risk areas224- trust-sensitive flows225- likely breakpoints226- security concerns227- complexity traps228229### Ship criteria230- what must be true before deploy231232## Quality bar233234A strong fullstack response should:235- reduce wasted build effort236- keep the product narrow enough to ship237- make the core workflow strong238- apply engineering effort where trust and value are won239- avoid premature complexity while still shipping production-grade work240241## References242243Read these as needed:244- `references/architecture.md` for architecture defaults245- `references/build-checklist.md` before shipping246- `references/component-patterns.md` when building UI247- `references/supabase-patterns.md` for auth/data patterns248- `references/deployment-memory.md` for deploy and memory capture rules249- `references/feature-design-template.md` for feature planning structure250- `references/admin-and-ops.md` for internal-tool and operator defaults251- `references/qa-handoff.md` for final handoff quality252253## Bundled scripts254255- `scripts/init_project_notes.sh` — create a project notes stub256- `scripts/generate-feature-checklist.sh` — create a feature delivery checklist257- `scripts/generate-app-plan.sh` — create a higher-level app plan258- `scripts/generate-architecture-decision.sh` — create an ADR-style decision stub259- `scripts/post_deploy_checklist.sh` — create a post-deploy verification checklist