@travisjneuman/generic-fullstack-code-reviewer

The Ultimate Claude Code Toolkit — 119 skills, 59 agents, 84 marketplace repos (5,400+ community skills), 30 commands, 10 hooks. Drop-in ~/.claude config that auto-activates the right resources from your prompt. Zero config required.

View in AI SkillSafe app
Scanned · no findings
37 downloads
0 stars
0 demos
SKILL.md
namegeneric-fullstack-code-reviewer
descriptionReview full-stack code for bugs, security vulnerabilities, performance issues, accessibility gaps, and CLAUDE.md compliance. Enforces TypeScript strict mode, input validation, GPU-accelerated animations, and design system consistency. Use when completing features, before commits, or reviewing pull requests.

Fullstack Code Reviewer

Review Next.js/NestJS code against production quality standards.

Extends: Generic Code Reviewer - Read base skill for full code review methodology, P0/P1/P2 priority system, and judgment calls.

Pre-Commit Commands

# Frontend
npm run build        # Next.js build
npm run lint         # ESLint

# Backend
npm run test         # NestJS tests
npm run type-check   # TypeScript

Fullstack-Specific Checks

Backend (NestJS)

Authentication & Authorization:

// Protected routes MUST have auth guard
@UseGuards(JwtAuthGuard)
@Get('profile')
getProfile(@CurrentUser() user: User) {
  return this.userService.findById(user.id);
}

Input Validation (DTOs):

// All inputs validated via class-validator
export class CreateUserDto {
  @IsEmail()
  email: string;

  @IsString()
  @MinLength(8)
  password: string;
}

Database Safety:

// Use Prisma, never raw SQL
// ✓ Good
await this.prisma.user.findUnique({ where: { id } });

// ✗ Bad
await this.prisma.$queryRaw`SELECT * FROM users WHERE id = ${id}`;

Frontend (Next.js)

Server vs Client Components:

// Default: Server Component (can fetch data, no hooks)
export default async function Page() {
  const data = await getData();
  return <div>{data}</div>;
}

// Client: Interactive (hooks, event handlers)
'use client';
export default function Interactive() {
  const [state, setState] = useState();
  return <button onClick={() => setState(...)}>Click</button>;
}

API Route Patterns:

// app/api/[route]/route.ts
export async function POST(request: Request) {
  const body = await request.json();
  // Validate body before processing
  return NextResponse.json({ success: true });
}

Cross-Stack Consistency

Shared Types:

// types/api.ts - Shared between frontend/backend
interface UserResponse {
  id: string;
  email: string;
  createdAt: string;
}

API Contract:

  • Request DTOs match frontend payloads
  • Response types match frontend expectations
  • Error format consistent (status, message, errors[])

Environment & Secrets

# .env (never committed)
DATABASE_URL=postgres://...
JWT_SECRET=...

# Check .env.example exists with placeholder values
# Verify .gitignore includes .env

Prisma Checks

# After schema changes
npx prisma migrate dev --name description
npx prisma generate
  • Migrations are reversible
  • Types regenerated after schema changes
  • Relations properly defined

Testing Requirements

Backend:

  • Unit tests for services
  • E2E tests for API endpoints
  • Mocked database for tests

Frontend:

  • Component tests for interactivity
  • API mocking for integration tests

Quick Fullstack Checklist

  • Auth guards on protected routes
  • DTOs validate all inputs
  • No raw SQL queries
  • Shared types match
  • .env not committed
  • Prisma types current

See Also

Embed badges

Add these to your README to show the skill's verification status.

SkillSafe verified badge
Verified badge
[![SkillSafe verified badge](https://api.skillsafe.ai/v1/badge/@travisjneuman/generic-fullstack-code-reviewer/verified)](https://skillsafe.ai/skill/@travisjneuman/generic-fullstack-code-reviewer/)
Installs badge
Installs badge
[![Installs badge](https://api.skillsafe.ai/v1/badge/@travisjneuman/generic-fullstack-code-reviewer/installs)](https://skillsafe.ai/skill/@travisjneuman/generic-fullstack-code-reviewer/)
Scan badge
Scan badge
[![Scan badge](https://api.skillsafe.ai/v1/badge/@travisjneuman/generic-fullstack-code-reviewer/scan)](https://skillsafe.ai/skill/@travisjneuman/generic-fullstack-code-reviewer/)
Eval pass rate badge
Eval pass rate
[![Eval pass rate badge](https://api.skillsafe.ai/v1/badge/@travisjneuman/generic-fullstack-code-reviewer/eval)](https://skillsafe.ai/skill/@travisjneuman/generic-fullstack-code-reviewer/)