Agent skill
noop-generator
Generate production-ready Express + TypeScript + PostgreSQL + Redis projects. Use when the user wants to create a new backend service, API, or microservice from scratch. Automatically invoked when discussing project scaffolding or generation.
Install this agent skill to your Project
npx add-skill https://github.com/HDeibler/noop/tree/main/skills/scaffold-generator
SKILL.md
Noop Generator Skill
This skill generates complete backend projects following a function-first, layered architecture.
When Claude Should Use This
Automatically use this skill when the user:
- Wants to create a new backend service or API
- Asks to scaffold or generate a new project
- Needs a production-ready Express + TypeScript template
- Wants to generate a microservice
- Mentions "noop" and creating something new
Framework Context
Core Philosophy
@docs/universal-framework/PHILOSOPHY.md
Architecture Specification
@docs/universal-framework/ARCHITECTURE_SPEC.md
Scaffolding Specification
@docs/universal-framework/SCAFFOLDING_SPEC.md
Generator Instructions
@docs/universal-framework/GENERATOR_INSTRUCTIONS.md
Template Location
The scaffold template is at: scaffold-template/
Placeholder System
| Placeholder | Format | Example |
|---|---|---|
{{PROJECT_NAME}} |
lowercase-dashes | my-api-service |
{{PROJECT_DESCRIPTION}} |
Free text | API for user management |
{{DATABASE_NAME}} |
lowercase_underscores | my_api_service |
{{DEFAULT_PORT}} |
Number | 3005 |
{{EXAMPLE_ENTITY}} |
PascalCase | Widget |
{{EXAMPLE_ENTITY_LOWER}} |
camelCase | widget |
{{EXAMPLE_ENTITY_PLURAL}} |
lowercase plural | widgets |
{{EXAMPLE_TABLE}} |
snake_case | widgets |
Generated Project Structure
{project-name}/
├── src/
│ ├── index.ts # Entry point
│ ├── config.ts # Zod-validated configuration
│ ├── routes.ts # Route registration
│ ├── handlers/ # HTTP handlers
│ │ └── services/ # Business logic
│ ├── middleware/ # Auth, error handling
│ ├── db/pg/ # PostgreSQL layer
│ │ ├── PgClientStore.ts # Aggregated Ops
│ │ └── migrations/sql/ # Versioned migrations
│ ├── redis/ # Caching
│ ├── types/ # Domain types
│ └── utils/ # Logger, errors, validation
├── .claude/ # Claude config for the project
│ ├── CLAUDE.md # Architecture guidelines
│ └── hooks/ # Auto-lint, pattern checks
├── docker-compose.yml # Postgres + Redis
└── Dockerfile # Production build
Key Principles
- No fallbacks - Errors are explicit, never hidden
- Explicit dependencies - Pass dbStore as parameter
- Organization scoping - Every DB op requires organizationId
- Type safety - Never use
any - Fail fast - Validate configuration at startup
Verification
After generation:
npm run typecheckpassesnpm run lintpassesnpm run buildsucceedsGET /healthzreturns 200
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
noop-architecture
Guide for implementing code following the noop function-first, layered architecture. Use when writing handlers, services, database operations, or middleware. Automatically invoked when working on noop-based projects.
noop-entity
Generate new domain entities with full CRUD infrastructure in noop-based projects. Use when adding new resources, tables, or API endpoints to an existing project.
handoff
Compact the current conversation into a handoff document for another agent to pick up.
scaffold-exercises
Create exercise directory structures with sections, problems, solutions, and explainers that pass linting. Use when user wants to scaffold exercises, create exercise stubs, or set up a new course section.
obsidian-vault
Search, create, and manage notes in the Obsidian vault with wikilinks and index notes. Use when user wants to find, create, or organize notes in Obsidian.
setup-pre-commit
Set up Husky pre-commit hooks with lint-staged (Prettier), type checking, and tests in the current repo. Use when user wants to add pre-commit hooks, set up Husky, configure lint-staged, or add commit-time formatting/typechecking/testing.
Didn't find tool you were looking for?