engineering-team/skills/senior-fullstack/SKILL.md
Fullstack development toolkit with project scaffolding for Next.js, FastAPI, MERN, and Django stacks, code quality analysis with security and complexity scoring, and stack selection guidance. Use when the user asks to "scaffold a new project", "create a Next.js app", "set up FastAPI with React", "analyze code quality", "audit my codebase", "what stack should I use", "generate project boilerplate", or mentions fullstack development, project setup, or tech stack comparison.
npx skillsauth add alirezarezvani/claude-skills senior-fullstackInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Fullstack development skill with project scaffolding and code quality analysis tools.
Use this skill when you hear:
Deterministic profile picker. Given four assumptions (team-size, cadence, user-facing, budget) plus optional traffic/sensitivity inputs, ranks the four built-in profiles and returns the matched profile with SLO floor and named approver chain. Refuses to recommend a profile without the four required inputs.
Usage:
# See all options
python scripts/fullstack_decision_engine.py --help
# Run against a sample input
python scripts/fullstack_decision_engine.py --sample
# Pick a profile from real inputs
python scripts/fullstack_decision_engine.py \
--team-size-12mo 8 --cadence daily --user-facing true --budget 5000 \
--traffic-p99-rps 50 --data-sensitivity pii-only
# JSON output for downstream tools
python scripts/fullstack_decision_engine.py --sample --output json
Returns: matched profile name, score, matched/violated constraints, stack recommendation, anti-recommendations, SLO floor, named-approver chain, and canon references.
The engine encodes the same matrix the conversational grill walks through — use it directly when inputs are already known, or via the cs-fullstack-engineer agent for the question-by-question grill.
Generates fullstack project structures with boilerplate code.
Supported Templates:
nextjs - Next.js 14+ with App Router, TypeScript, Tailwind CSSfastapi-react - FastAPI backend + React frontend + PostgreSQLmern - MongoDB, Express, React, Node.js with TypeScriptdjango-react - Django REST Framework + React frontendUsage:
# List available templates
python scripts/project_scaffolder.py --list-templates
# Create Next.js project
python scripts/project_scaffolder.py nextjs my-app
# Create FastAPI + React project
python scripts/project_scaffolder.py fastapi-react my-api
# Create MERN stack project
python scripts/project_scaffolder.py mern my-project
# Create Django + React project
python scripts/project_scaffolder.py django-react my-app
# Specify output directory
python scripts/project_scaffolder.py nextjs my-app --output ./projects
# JSON output
python scripts/project_scaffolder.py nextjs my-app --json
Parameters:
| Parameter | Description |
|-----------|-------------|
| template | Template name (nextjs, fastapi-react, mern, django-react) |
| project_name | Name for the new project directory |
| --output, -o | Output directory (default: current directory) |
| --list-templates, -l | List all available templates |
| --json | Output in JSON format |
Output includes:
Analyzes fullstack codebases for quality issues.
Analysis Categories:
Usage:
# Analyze current directory
python scripts/code_quality_analyzer.py .
# Analyze specific project
python scripts/code_quality_analyzer.py /path/to/project
# Verbose output with detailed findings
python scripts/code_quality_analyzer.py . --verbose
# JSON output
python scripts/code_quality_analyzer.py . --json
# Save report to file
python scripts/code_quality_analyzer.py . --output report.json
Parameters:
| Parameter | Description |
|-----------|-------------|
| project_path | Path to project directory (default: current directory) |
| --verbose, -v | Show detailed findings |
| --json | Output in JSON format |
| --output, -o | Write report to file |
Output includes:
Sample Output:
============================================================
CODE QUALITY ANALYSIS REPORT
============================================================
Overall Score: 75/100 (Grade: C)
Files Analyzed: 45
Total Lines: 12,500
--- SECURITY ---
Critical: 1
High: 2
Medium: 5
--- COMPLEXITY ---
Average Complexity: 8.5
High Complexity Files: 3
--- RECOMMENDATIONS ---
1. [P0] SECURITY
Issue: Potential hardcoded secret detected
Action: Remove or secure sensitive data at line 42
package.json (or requirements.txt) exists# 1. Scaffold project
python scripts/project_scaffolder.py nextjs my-saas-app
# 2. Verify scaffold succeeded
ls my-saas-app/package.json
# 3. Navigate and install
cd my-saas-app
npm install
# 4. Configure environment
cp .env.example .env.local
# 5. Run quality check
python scripts/code_quality_analyzer.py .
# 6. Start development
npm run dev
# 1. Full analysis
python scripts/code_quality_analyzer.py /path/to/project --verbose
# 2. Generate detailed report
python scripts/code_quality_analyzer.py /path/to/project --json --output audit.json
# 3. After fixing P0 issues, re-run to verify
python scripts/code_quality_analyzer.py /path/to/project --verbose
Use the tech stack guide to evaluate options:
See references/tech_stack_guide.md for detailed comparison.
references/architecture_patterns.md)references/development_workflows.md)references/tech_stack_guide.md)| Requirement | Recommendation | |-------------|---------------| | SEO-critical site | Next.js with SSR | | Internal dashboard | React + Vite | | API-first backend | FastAPI or Fastify | | Enterprise scale | NestJS + PostgreSQL | | Rapid prototype | Next.js API routes | | Document-heavy data | MongoDB | | Complex queries | PostgreSQL |
| Issue | Solution | |-------|----------| | N+1 queries | Use DataLoader or eager loading | | Slow builds | Check bundle size, lazy load | | Auth complexity | Use Auth.js or Clerk | | Type errors | Enable strict mode in tsconfig | | CORS issues | Configure middleware properly |
Before this skill scaffolds, recommends, or modifies any code, the following four assumptions MUST be surfaced. If any are unknown, the skill stops and walks the Forcing-question library instead.
Verifiable success criteria (Karpathy #4) — every recommendation this skill emits must include three machine-checkable numbers:
If any of those three is not stated, the recommendation is incomplete — go back to Q7 of the forcing-question library.
The scripts/fullstack_decision_engine.py tool encodes these checks: it refuses to recommend a profile without all four assumption inputs and prints the verifiable thresholds for the matched profile.
Four built-in profiles in profiles/ calibrate every recommendation:
| Profile | When to pick | Cloud ceiling | Pattern |
|---|---|---|---|
| saas-startup | < 10 eng, customer-facing, daily+ cadence | $8K/mo | Modular monolith on Next.js + Postgres |
| enterprise-scale | 50+ eng, regulated, per-PR with gates | $250K/mo | Domain-bounded services + platform team |
| internal-tool | ≤ 5 eng, auth-walled, < 100 DAU | $500/mo | Retool-first; thin custom stack if forced |
| marketing-site | SEO-dependent, near-zero write | $200/mo | Static-first (Astro / 11ty / Next-static) |
Pick a profile via:
python scripts/fullstack_decision_engine.py \
--team-size 6 --team-size-12mo 12 \
--cadence daily --user-facing true --budget 5000 \
--traffic-p99-rps 45 --data-sensitivity pii-only
The tool returns the best-fit profile, the tradeoff against the runner-up (if within 15%), the stack recommendation, the anti-patterns to avoid on that profile, and the named-approver chain. This tool never auto-approves.
To add a custom profile: copy profiles/saas-startup.json to profiles/<your-org>.json, adjust the constraints and stack_recommendations blocks, and rerun. The JSON is the customization surface — no code changes needed.
This skill does NOT reimplement scope owned by the POWERFUL-tier specialists. It forks into them. See references/composition_map.md for the full routing table. Key forks:
| Concern | Fork into |
|---|---|
| API contract review | engineering/skills/api-design-reviewer/ |
| Database schema design | engineering/skills/database-designer/ |
| Reliability / SLO design | engineering/slo-architect/ |
| CI/CD pipeline | engineering/skills/ci-cd-pipeline-builder/ |
| Performance profiling | engineering/skills/performance-profiler/ |
| Pre-commit Karpathy review | engineering/karpathy-coder/ |
| Pre-flight architecture grill | engineering/grill-me/ |
The cs-fullstack-engineer agent (in agents/engineering/cs-fullstack-engineer.md) orchestrates these forks via context: fork. Invoke it from another agent with Agent({subagent_type: "cs-fullstack-engineer", prompt: "..."}) or via the slash command /cs:fullstack-review <your problem>.
Before locking any architecture or stack decision, walk the seven forcing questions in references/forcing_questions.md. Each has a recommended answer, canon citation, and kill criterion. The discipline:
/tmp/fullstack-grill-<date>.md).fullstack_decision_engine.py with the seven answers as inputs.Summary of the seven questions (full content in the reference):
This skill is invokable by any other agent or skill via three surfaces:
/cs:fullstack-review <prompt> — runs the full grill + decision engine + composition routing.Agent({subagent_type: "cs-fullstack-engineer", prompt: "..."}) — forks context, returns ≤ 200-word digest.python scripts/fullstack_decision_engine.py ... — deterministic profile match without the conversational grill (use when inputs are already known).See agents/engineering/cs-fullstack-engineer.md for the full invocation contract.
development
Use when someone wants to run a weekly review, close open loops, audit stalled projects and commitments, get their system back to trusted, restart a lapsed review habit, or says "/cs:weekly-review". Walks David Allen's three-phase loop — GET CLEAR, GET CURRENT, GET CREATIVE — with deterministic scripts that inventory open loops, gate the checklist with named gaps, and score commitment health 0-100.
development
Use when someone wants to decide whether a meeting is worth calling, price a meeting in dollars, build a timeboxed agenda with desired outcomes, or turn messy meeting notes into owned action items — or says "should this be a meeting", "/cs:meeting-prep", or "/cs:meeting-actions". Runs a cost gate (ASYNC / NOT-READY / MEET), builds a decision-first agenda, and extracts an owner + due-date checklist that flags every orphan.
development
Convert a rambling description of a desired outcome into one polished, autonomous /goal prompt ready to paste into a fresh session. Use when the user says "/fable-goal", "turn this into a goal prompt", "write me a fable prompt", "write the prompt that builds X", or rambles about something they want made and asks for the prompt that makes it happen. The output is a single copy-paste prompt, never the build itself. Do NOT use when the user wants the thing built right now in this session — only when they want the PROMPT that will make it happen in a fresh session.
development
Use when someone wants to plan a deep work day, time-block their calendar or task list, budget or cut shallow work, protect focus hours, track deep-work sessions and streaks, run an end-of-day shutdown ritual, or says "/deep-work" or "/time-block". Classifies tasks deep vs shallow, builds an energy-first time-blocked schedule that refuses deep demand past the 4-hour ceiling, batches shallow work into at most two windows, and logs focus sessions against a weekly target.