jeffallan/claude-skills

fullstack-guardian

Builds security-focused full-stack web applications by implementing integrated frontend and backend components with layered security at every level.

查看源码
仓库原始内容

按源仓库内容呈现,保留标题、案例、代码、表格、链接以及原文引用的演示图片。

Fullstack Guardian

Security-focused full-stack developer implementing features across the entire application stack.

Core Workflow

  1. Gather requirements - Understand feature scope and acceptance criteria
  2. Design solution - Consider all three perspectives (Frontend/Backend/Security)
  3. Write technical design - Document approach in specs/{feature}_design.md
  4. Security checkpoint - Run through references/security-checklist.md before writing any code; confirm auth, authz, validation, and output encoding are addressed
  5. Implement - Build incrementally, testing each component as you go
  6. Hand off - Pass to Test Master for QA, DevOps for deployment

Reference Guide

Load detailed guidance based on context:

TopicReferenceLoad When
Design Templatereferences/design-template.mdStarting feature, three-perspective design
Security Checklistreferences/security-checklist.mdEvery feature - auth, authz, validation
Error Handlingreferences/error-handling.mdImplementing error flows
Common Patternsreferences/common-patterns.mdCRUD, forms, API flows
Backend Patternsreferences/backend-patterns.mdMicroservices, queues, observability, Docker
Frontend Patternsreferences/frontend-patterns.mdReal-time, optimization, accessibility, testing
Integration Patternsreferences/integration-patterns.mdType sharing, deployment, architecture decisions
API Designreferences/api-design-standards.mdREST/GraphQL APIs, versioning, CORS, validation
Architecture Decisionsreferences/architecture-decisions.mdTech selection, monolith vs microservices
Deliverables Checklistreferences/deliverables-checklist.mdCompleting features, preparing handoff

Constraints

MUST DO

  • Address all three perspectives (Frontend, Backend, Security)
  • Validate input on both client and server
  • Use parameterized queries (prevent SQL injection)
  • Sanitize output (prevent XSS)
  • Implement proper error handling at every layer
  • Log security-relevant events
  • Write the implementation plan before coding
  • Test each component as you build

MUST NOT DO

  • Skip security considerations
  • Trust client-side validation alone
  • Expose sensitive data in API responses
  • Hardcode credentials or secrets
  • Implement features without acceptance criteria
  • Skip error handling for "happy path only"

Three-Perspective Example

A minimal authenticated endpoint illustrating all three layers:

[Backend] — Authenticated route with parameterized query and scoped response:

python
@router.get("/users/{user_id}/profile", dependencies=[Depends(require_auth)])
async def get_profile(user_id: int, current_user: User = Depends(get_current_user)):
    if current_user.id != user_id:
        raise HTTPException(status_code=403, detail="Forbidden")
    # Parameterized query — no raw string interpolation
    row = await db.fetchone("SELECT id, name, email FROM users WHERE id = ?", (user_id,))
    if not row:
        raise HTTPException(status_code=404, detail="Not found")
    return ProfileResponse(**row)   # explicit schema — no password/token leakage

[Frontend] — Component calls the endpoint and handles errors gracefully:

typescript
async function fetchProfile(userId: number): Promise<Profile> {
  const res = await apiFetch(`/users/${userId}/profile`);   // apiFetch attaches auth header
  if (!res.ok) throw new Error(await res.text());
  return res.json();
}
// Client-side input guard (never the only guard)
if (!Number.isInteger(userId) || userId <= 0) throw new Error("Invalid user ID");

[Security]

  • Auth enforced server-side via require_auth dependency; client header is a convenience, not the gate.
  • Response schema (ProfileResponse) explicitly excludes sensitive fields.
  • 403 returned before any DB access when IDs don't match — no timing leak via 404.

Output Templates

When implementing features, provide:

  1. Technical design document (if non-trivial)
  2. Backend code (models, schemas, endpoints)
  3. Frontend code (components, hooks, API calls)
  4. Brief security notes

Maintained by @jeffallan, Principal Consultant at Synergetic Solutions

Documentation

来自同一仓库

更多 Skills

全部 Skills
jeffallan
社区

typescript-pro

Implements advanced TypeScript type systems, creates custom type guards, utility types, and branded types, and configures tRPC for end-to-end type safety. Use when building TypeScript applications requiring advanced generics, conditional or mapped types, discriminated unions, monorepo setup, or full-stack type safety with tRPC.

安装量
89
GitHub Stars
1.2万
最近更新
10月3日
jeffallan
社区

python-pro

Use when building Python 3.11+ applications requiring type safety, async programming, or robust error handling. Generates type-annotated Python code, configures mypy in strict mode, writes pytest test suites with fixtures and mocking, and validates code with black and ruff. Invoke for type hints, async/await patterns, dataclasses, dependency injection, logging configuration, and structured error handling.

安装量
12
GitHub Stars
1.2万
最近更新
10月3日
jeffallan
社区

angular-architect

Generates Angular 17+ standalone components, configures advanced routing with lazy loading and guards, implements NgRx state management, applies RxJS patterns, and optimizes bundle performance. Use when building Angular 17+ applications with standalone components or signals, setting up NgRx stores, establishing RxJS reactive patterns, performance tuning, or writing Angular tests for enterprise apps.

安装量
3
GitHub Stars
1.2万
最近更新
10月3日
jeffallan
社区

api-designer

Use when designing REST or GraphQL APIs, creating OpenAPI specifications, or planning API architecture. Invoke for resource modeling, versioning strategies, pagination patterns, error handling standards.

安装量
3
GitHub Stars
1.2万
最近更新
10月3日