Tech Stacks
The Tech Stacks domain codifies enterprise engineering conventions, architectural patterns, and verified scaffolding bundles for modern production tech stacks.
Rather than relying on the LLM's generic defaults, Coding Pal injects precise conventions whenever files matching these stacks are opened or edited.
Domain Architecture
Capabilities Matrix
| Tech Stack | Focus Area | Persistent Instruction | Scaffolding Skill Bundle | Target Path Pattern |
|---|---|---|---|---|
| Node.js Express | Layered microservice backend | node-express | node-express-examples | src/**/*.js |
| Angular Enterprise | Feature-sliced admin SPA | angular-admin | angular-admin-examples | **/src/app/**/*.ts |
| PostgreSQL & Liquibase | Audited relational schema | postgres-liquibase | postgres-liquibase-examples | db/**/*.{sql,xml,yml} |
| Docker & Compose | Containerized infra & Traefik | docker | docker-examples | docker/**, **/dockerfile*, scripts/**/*.sh |
Stack Deep Dives
1. Node.js & Express Microservices
- Instruction:
node-express.instructions.md - Scaffolding:
skills/node-express-examples - Architectural Rules:
- Directory Layering: Strict separation between
routes/,controllers/,services/,models/, andmiddlewares/. Controllers never execute database queries; services never handle HTTPreq/res. - Standardized Envelopes:
- Success:
{ "data": ... } - Failure:
{ "error": { "code": "RESOURCE_NOT_FOUND", "message": "..." } }
- Success:
- Hardened Security: Helmet enabled, strict CORS whitelist, rate-limiting on public routes, and input validation via schemas.
- Directory Layering: Strict separation between
2. Angular Enterprise Admin Portal
- Instruction:
angular-admin.instructions.md - Scaffolding:
skills/angular-admin-examples - Architectural Rules:
- Feature-Sliced Entities: Each business domain (e.g.
users,products,orders) forms an isolated slice containing its UI components, API services, and route declarations. - PrimeNG Component Guidelines: Standardized data tables with server-side pagination, sorting, search debounce, and dialog forms.
- Dynamic ACL: Granular permission checks (
canRead,canWrite,canDelete) evaluated through directive and route guards. - Modern Reactivity: Uses Angular signals (
signal(),computed()) and standalone components.
- Feature-Sliced Entities: Each business domain (e.g.
3. PostgreSQL & Liquibase Database Evolution
- Instruction:
postgres-liquibase.instructions.md - Scaffolding:
skills/postgres-liquibase-examples - Architectural Rules:
- Deterministic ChangeSets: Every database change lives in an isolated Liquibase changeSet with explicit author, ID, and mandatory
<rollback>block. - Audit Trails: Every table includes
created_at,updated_at,created_by, andupdated_by. - Soft-Delete Triggers: Tables support soft deletion via
deleted_attimestamps, accompanied by partial unique indexes (e.g.WHERE deleted_at IS NULL).
- Deterministic ChangeSets: Every database change lives in an isolated Liquibase changeSet with explicit author, ID, and mandatory
4. Docker, Traefik, & Container Infrastructure
- Instruction:
docker.instructions.md - Scaffolding:
skills/docker-examples - Architectural Rules:
- Reverse Proxy Routing: Services integrate into a unified Traefik edge network via dynamic Docker labels (
traefik.http.routers.<svc>.rule). - Security & Permissions: Containers run as non-root users (
USER node/USER 1000:1000) with BuildKit secret mounts for credentials (--mount=type=secret). - Development Scripts: Standardized
./scripts/start-dev.shand./scripts/stop-dev.shwrapper scripts for local developer onboarding.
- Reverse Proxy Routing: Services integrate into a unified Traefik edge network via dynamic Docker labels (