Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
davila7 avatar

Backend Dev Guidelines

  • 475 installs
  • 30.1k repo stars
  • Updated August 2, 2026
  • davila7/claude-code-templates

backend-dev-guidelines is an agent skill that provides consistent, production-grade patterns for Node, Python, or Go backend services so developers avoid reinventing architecture each sprint.

About

backend-dev-guidelines is a davila7/claude-code-templates agent skill that encodes reusable backend architecture and coding conventions for Node.js, Python, and Go service development. It helps engineers apply consistent folder structure, error handling, API design, and production-ready patterns instead of improvising layout on every new microservice or monolith module. The skill reports 463 installs and rank 31 on skills.sh from the claude-code-templates source. Reach for it when scaffolding a new backend, reviewing service structure, or aligning multiple language stacks to shared engineering standards inside Claude Code or Cursor agent sessions.

  • Enforces 12-factor principles and clean architecture across services
  • Provides ready-to-use templates for auth, database access, queuing, and observability
  • Includes security, logging, and error-handling standards that reduce production incidents
  • Works with Claude Code, Cursor, and Windsurf to generate compliant code from the first prompt
  • Delivers a living checklist that evolves with your project

Backend Dev Guidelines by the numbers

  • 475 all-time installs (skills.sh)
  • Ranked #848 of 4,348 Backend & APIs skills by installs in the Skillselion catalog
  • Data as of Aug 3, 2026 (Skillselion catalog sync)
npx skills add https://github.com/davila7/claude-code-templates --skill backend-dev-guidelines

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs475
repo stars30.1k
Last updatedAugust 2, 2026
Repositorydavila7/claude-code-templates

What backend architecture patterns work for Node Python Go?

Get consistent, production-grade patterns for Node, Python, or Go backend services without reinventing architecture each time.

Who is it for?

Backend engineers starting or standardizing Node, Python, or Go services who want repeatable production patterns.

Skip if: Frontend-only work or teams that already enforce a fixed internal architecture template with no flexibility.

When should I use this skill?

A developer scaffolds a new backend service or asks for production-grade Node, Python, or Go architecture guidance.

What you get

Consistent backend service structure, API conventions, and production-ready patterns across Node, Python, or Go codebases.

  • backend folder structure
  • API design conventions
  • production-ready service patterns

By the numbers

  • Reports 463 installs on skills.sh
  • Covers 3 backend language stacks: Node, Python, Go
  • Ranks 31 in davila7/claude-code-templates on skills.sh

Files

SKILL.mdMarkdownGitHub ↗

Backend Development Guidelines

Purpose

Establish consistency and best practices across backend microservices (blog-api, auth-service, notifications-service) using modern Node.js/Express/TypeScript patterns.

When to Use This Skill

Automatically activates when working on:

  • Creating or modifying routes, endpoints, APIs
  • Building controllers, services, repositories
  • Implementing middleware (auth, validation, error handling)
  • Database operations with Prisma
  • Error tracking with Sentry
  • Input validation with Zod
  • Configuration management
  • Backend testing and refactoring

---

Quick Start

New Backend Feature Checklist

  • [ ] Route: Clean definition, delegate to controller
  • [ ] Controller: Extend BaseController
  • [ ] Service: Business logic with DI
  • [ ] Repository: Database access (if complex)
  • [ ] Validation: Zod schema
  • [ ] Sentry: Error tracking
  • [ ] Tests: Unit + integration tests
  • [ ] Config: Use unifiedConfig

New Microservice Checklist

  • [ ] Directory structure (see architecture-overview.md)
  • [ ] instrument.ts for Sentry
  • [ ] unifiedConfig setup
  • [ ] BaseController class
  • [ ] Middleware stack
  • [ ] Error boundary
  • [ ] Testing framework

---

Architecture Overview

Layered Architecture

HTTP Request
    ↓
Routes (routing only)
    ↓
Controllers (request handling)
    ↓
Services (business logic)
    ↓
Repositories (data access)
    ↓
Database (Prisma)

Key Principle: Each layer has ONE responsibility.

See architecture-overview.md for complete details.

---

Directory Structure

service/src/
├── config/              # UnifiedConfig
├── controllers/         # Request handlers
├── services/            # Business logic
├── repositories/        # Data access
├── routes/              # Route definitions
├── middleware/          # Express middleware
├── types/               # TypeScript types
├── validators/          # Zod schemas
├── utils/               # Utilities
├── tests/               # Tests
├── instrument.ts        # Sentry (FIRST IMPORT)
├── app.ts               # Express setup
└── server.ts            # HTTP server

Naming Conventions:

  • Controllers: PascalCase - UserController.ts
  • Services: camelCase - userService.ts
  • Routes: camelCase + Routes - userRoutes.ts
  • Repositories: PascalCase + Repository - UserRepository.ts

---

Core Principles (7 Key Rules)

1. Routes Only Route, Controllers Control

// ❌ NEVER: Business logic in routes
router.post('/submit', async (req, res) => {
    // 200 lines of logic
});

// ✅ ALWAYS: Delegate to controller
router.post('/submit', (req, res) => controller.submit(req, res));

2. All Controllers Extend BaseController

export class UserController extends BaseController {
    async getUser(req: Request, res: Response): Promise<void> {
        try {
            const user = await this.userService.findById(req.params.id);
            this.handleSuccess(res, user);
        } catch (error) {
            this.handleError(error, res, 'getUser');
        }
    }
}

3. All Errors to Sentry

try {
    await operation();
} catch (error) {
    Sentry.captureException(error);
    throw error;
}

4. Use unifiedConfig, NEVER process.env

// ❌ NEVER
const timeout = process.env.TIMEOUT_MS;

// ✅ ALWAYS
import { config } from './config/unifiedConfig';
const timeout = config.timeouts.default;

5. Validate All Input with Zod

const schema = z.object({ email: z.string().email() });
const validated = schema.parse(req.body);

6. Use Repository Pattern for Data Access

// Service → Repository → Database
const users = await userRepository.findActive();

7. Comprehensive Testing Required

describe('UserService', () => {
    it('should create user', async () => {
        expect(user).toBeDefined();
    });
});

---

Common Imports

// Express
import express, { Request, Response, NextFunction, Router } from 'express';

// Validation
import { z } from 'zod';

// Database
import { PrismaClient } from '@prisma/client';
import type { Prisma } from '@prisma/client';

// Sentry
import * as Sentry from '@sentry/node';

// Config
import { config } from './config/unifiedConfig';

// Middleware
import { SSOMiddlewareClient } from './middleware/SSOMiddleware';
import { asyncErrorWrapper } from './middleware/errorBoundary';

---

Quick Reference

HTTP Status Codes

CodeUse Case
200Success
201Created
400Bad Request
401Unauthorized
403Forbidden
404Not Found
500Server Error

Service Templates

Blog API (✅ Mature) - Use as template for REST APIs Auth Service (✅ Mature) - Use as template for authentication patterns

---

Anti-Patterns to Avoid

❌ Business logic in routes ❌ Direct process.env usage ❌ Missing error handling ❌ No input validation ❌ Direct Prisma everywhere ❌ console.log instead of Sentry

---

Navigation Guide

Need to...Read this
Understand architecturearchitecture-overview.md
Create routes/controllersrouting-and-controllers.md
Organize business logicservices-and-repositories.md
Validate inputvalidation-patterns.md
Add error trackingsentry-and-monitoring.md
Create middlewaremiddleware-guide.md
Database accessdatabase-patterns.md
Manage configconfiguration.md
Handle async/errorsasync-and-errors.md
Write teststesting-guide.md
See examplescomplete-examples.md

---

Resource Files

architecture-overview.md

Layered architecture, request lifecycle, separation of concerns

routing-and-controllers.md

Route definitions, BaseController, error handling, examples

services-and-repositories.md

Service patterns, DI, repository pattern, caching

validation-patterns.md

Zod schemas, validation, DTO pattern

sentry-and-monitoring.md

Sentry init, error capture, performance monitoring

middleware-guide.md

Auth, audit, error boundaries, AsyncLocalStorage

database-patterns.md

PrismaService, repositories, transactions, optimization

configuration.md

UnifiedConfig, environment configs, secrets

async-and-errors.md

Async patterns, custom errors, asyncErrorWrapper

testing-guide.md

Unit/integration tests, mocking, coverage

complete-examples.md

Full examples, refactoring guide

---

Related Skills

  • database-verification - Verify column names and schema consistency
  • error-tracking - Sentry integration patterns
  • skill-developer - Meta-skill for creating and managing skills

---

Skill Status: COMPLETE ✅ Line Count: < 500 ✅ Progressive Disclosure: 11 resource files ✅

Related skills

Forks & variants (1)

Backend Dev Guidelines has 1 known copy in the catalog totaling 44 installs. They canonicalize to this original listing.

How it compares

Choose backend-dev-guidelines for cross-language backend conventions instead of language-specific framework skills like FastAPI or Koa alone.

FAQ

Which languages does backend-dev-guidelines cover?

The backend-dev-guidelines skill covers Node.js, Python, and Go backend services. It provides consistent, production-grade architecture and coding patterns so developers do not reinvent structure on each new project.

When should I use backend-dev-guidelines?

Use backend-dev-guidelines when scaffolding a new backend, aligning service folder layout, or applying shared production conventions across Node, Python, or Go APIs inside Claude Code or Cursor.

Backend & APIsbackendintegrations

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.