# Full Stack Developer

> Use when a task spans both frontend and backend — end-to-end features, full-stack frameworks (Next.js, Nuxt, Remix, SvelteKit, Rails, Laravel), or when integrating UI with server logic in one codebase. Trigger phrases: "full stack", "end-to-end feature", "Next.js API route + page", "monorepo frontend+backend", "server actions", "full-stack app", "tRPC".

- Skill: `barastrong/full-stack-developer` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add barastrong/full-stack-developer`
- Raw SKILL.md: https://api.skillmd.com/api/skills/barastrong/full-stack-developer/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Web & Frontend
- Author: barastrong (https://skillmd.com/u/barastrong)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/barastrong/full-stack-developer

---


# Full Stack Developer

## Role Summary

A Full Stack Developer owns features end-to-end — from database schema through
API to rendered UI. The role bridges backend and frontend concerns, making
pragmatic trade-offs across the entire stack.

## Core Responsibilities

- Build complete features: data model → API → UI → tests
- Choose appropriate rendering strategy (SSR, SSG, CSR, ISR)
- Manage shared types/contracts between client and server
- Handle deployment of both layers (or unified full-stack deploy)
- Optimize for developer experience and delivery speed
- Coordinate with specialists (DBA, designer, DevOps) as needed

## Standard Workflow

1. **Scope** — break the feature into backend and frontend tasks; identify
   shared contracts (types, API schema).
2. **Data Layer** — schema/migration, seed data, model definition.
3. **API/Server Logic** — endpoints or server actions, validation, auth guards.
4. **UI** — pages/components, client state, form handling, error/loading states.
5. **Integration** — wire frontend to backend, handle edge cases, add
   optimistic updates or real-time sync if needed.
6. **Testing** — unit tests for business logic, component tests for UI,
   E2E tests for critical paths.
7. **Deploy** — CI/CD pipeline, environment variables, feature flags.

## Technology Stack (common)

| Category | Tools |
|----------|-------|
| Full-stack frameworks | Next.js, Nuxt, Remix, SvelteKit, Rails, Laravel, Django |
| Type sharing | tRPC, Zodios, GraphQL codegen, OpenAPI codegen |
| Database | PostgreSQL, MySQL, SQLite, MongoDB, Prisma, Drizzle, TypeORM |
| Auth | NextAuth/Auth.js, Clerk, Supabase Auth, Lucia |
| Deploy | Vercel, Netlify, Railway, Fly.io, Docker |
| Monorepo | Turborepo, Nx, pnpm workspaces |

## Best Practices

- Single source of truth for types — generate or share between client/server.
- Validate on both sides: server is the authority, client is UX convenience.
- Use full-stack framework conventions (file-based routing, server actions)
  instead of reinventing.
- Keep server and client code clearly separated even in unified codebases.
- Progressive disclosure of complexity — start with the simplest approach,
  refactor when real constraints emerge.
- Database-level constraints (NOT NULL, UNIQUE, FK) in addition to app-level
  validation.

## Anti-Patterns to Avoid

- Duplicating business logic in both client and server without shared code.
- Over-fetching data to the client — only send what the UI needs.
- Mixing server secrets into client bundles.
- Deploying frontend and backend with tightly coupled versions without
  backward compatibility.
- Premature microservice split — start monolith.

## References

- `references/full-stack-checklist.md` — feature completeness checklist
- `references/rendering-strategies.md` — SSR vs SSG vs CSR decision guide

## Expected Output Format

When completing full-stack tasks, deliver:
1. Complete feature: migration + API + UI + tests
2. Types/contracts shared or generated
3. E2E test for the happy path
4. Deployment notes (env vars, build commands)

