Generic Feature Developer

SkillAI & models

Guide feature development with architecture patterns for any tech stack. Covers frontend, backend, full-stack, and automation projects. Use when adding new features, modifying systems, or planning changes.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Generic Feature Developer skill

What this skill tells your AI

The instructions your AI receives, as published by travisjneuman/.claude in skills/generic-feature-developer/SKILL.md and read by ahel’s review.

Guide feature development across any tech stack.

When to Use This Skill

Use for:

  • Adding new features to existing codebase
  • Modifying or extending current systems
  • Planning architectural changes
  • Choosing between implementation approaches
  • Designing data flow for new functionality

Don't use when:

  • Pure UI/styling work → use generic-design-system
  • UX design decisions → use generic-ux-designer
  • Code review → use generic-code-reviewer

Development Workflow

  1. Understand - Read CLAUDE.md, identify affected files, list constraints
  2. Plan - Choose patterns, design data flow, identify edge cases
  3. Implement - Small testable changes, commit frequently
  4. Test & Document - Write tests, update docs, performance check

Architecture by Project Type

Static Sites

project/
├── index.html
├── css/           # variables.css, style.css
├── js/            # main.js, utils.js
└── assets/

Patterns: CSS variables, ES modules, event delegation

React/Next.js

src/
├── components/    # ui/, features/, layout/
├── hooks/
├── stores/
├── services/
└── types/

Patterns: Container/Presentational, custom hooks, Zustand/React Query

NestJS Backend

src/
├── modules/[feature]/
│   ├── feature.module.ts
│   ├── feature.controller.ts
│   ├── feature.service.ts
│   └── dto/
└── common/        # guards, decorators

Patterns: Module organization, DTOs, Guards, Prisma

Feature Decision Framework

Scope Assessment (First)

ScopeAction
Single componentImplement directly
Cross-cutting concernDesign interface first
New subsystemCreate architecture doc, get approval

Build vs Integrate

FactorBuild CustomUse Library
Core to productYes
Commodity featureYes
Tight integration neededYes
Time-criticalYes
Long-term ownershipYes

State Management Selection

ScopeSolution
Component-localuseState/useReducer
Feature-wideContext or Zustand slice
App-wideZustand/Redux store
Server stateReact Query/SWR
Form stateReact Hook Form

API Design Checklist

  • RESTful or GraphQL decision documented
  • Authentication method chosen
  • Error response format standardized
  • Pagination strategy defined
  • Rate limiting considered

Common Features

Adding UI Component

  1. Create component → 2. Export → 3. Add tests → 4. Document

Adding API Endpoint

  1. Define route → 2. Add validation → 3. Implement service → 4. Test

Adding State Management

  1. Define shape → 2. Create store → 3. Add actions → 4. Connect components

Database Changes

  1. Design schema → 2. Create migration → 3. Update models → 4. Add service

Data Flow Patterns

Frontend Data Flow

User Action → Event Handler → State Update → Re-render → UI Feedback
  • Optimistic updates: Update UI immediately, rollback on error
  • Pessimistic updates: Wait for server confirmation
  • Decision: Optimistic for low-risk (likes), pessimistic for high-risk (payments)

API Request Flow

Request → Auth Check → Validation → Business Logic → Database → Response
  • Early exit on validation failure
  • Transaction boundaries around multi-step operations
  • Consistent error response format

Event-Driven Patterns

Event TypeApproach
User eventsImmediate feedback
Server eventsWebSocket/SSE for real-time
Background tasksQueue for long operations

Error Handling Strategy

Error TypeFrontendBackend
ValidationInline field errors400 + field errors
AuthRedirect to login401/403
Not FoundEmpty state or redirect404
Server ErrorGeneric message + retry500 + log
NetworkOffline indicator + queueN/A

Frontend Pattern

try {
  await apiCall();
} catch (error) {
  if (error instanceof ValidationError) showFieldErrors(error.fields);
  else showGenericError();
}

Backend Pattern

if (err instanceof ValidationError)
  return res.status(400).json({ errors: err.errors });
if (err instanceof AuthError)
  return res.status(401).json({ message: "Unauthorized" });

Testing Strategy

LayerTypeTools
UIComponentTesting Library
LogicUnitJest, Vitest
APIIntegrationSupertest
E2EEnd-to-endPlaywright

Performance

Frontend: Code splitting, lazy loading, memoization, debounce Backend: DB indexing, caching, connection pooling, background jobs

Feature Implementation Checklist

Before marking feature complete:

  • Works for happy path
  • Error states handled
  • Loading states implemented
  • Edge cases tested
  • TypeScript types complete
  • Tests written
  • Documentation updated

See Also

  • Code Review Standards - Quality checks
  • Design Patterns - UI patterns
  • generic-design-system - For styling and visual consistency
  • generic-ux-designer - For UX flow decisions
  • Project CLAUDE.md - Workflow rules

READ shared standards when:

  • Complex feature design → CODE_REVIEW_STANDARDS.md (architecture section)
  • UI component patterns → DESIGN_PATTERNS.md (component section)

Signals

GitHub stars
97
Forks
22
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
generic-feature-developer
Source
github.com/travisjneuman/.claude