← ClaudeAtlas

python-djangolisted

Use when creating or modifying Python files in the src/backend/ directory — Django models, DRF views, serializers, services, selectors, Celery tasks, migrations, or tests. Triggers on any .py file change under src/backend/. Covers architecture patterns (services + selectors), exception hierarchy, error envelope, file upload validation, and testing standards specific to this Django/DRF codebase.
kouroshez/coding-os · ★ 6 · AI & Automation · score 77
Install: claude install-skill kouroshez/coding-os
REQUIRED BACKGROUND: This skill `depends_on: [clean-code, backend-fundamentals]`. Both are loaded transitively — `clean-code` gives universal code quality (fail-closed errors, typed exceptions, self-documenting code, edge cases, error path tests) and `backend-fundamentals` gives stack-agnostic backend patterns (services/selectors, idempotency, envelopes, N+1, migrations, auth). This skill adds ONLY Django/DRF-specific layering on top. ## Pre-Code Checklist Before writing any backend Python code, verify: - [ ] Read `docs/engineering/backend-rules.md` — the canonical backend policy - [ ] If touching models or schema: read `docs/prd/12a-commerce-schema.md` and `docs/prd/12b-content-and-system-schema.md` - [ ] If touching API endpoints or error handling: read `docs/api-contracts/error-format.md` - [ ] If touching auth, payments, file uploads, or permissions: read `docs/playbooks/security-review.md` - [ ] If touching download infrastructure: read `docs/architecture/04c-download-security.md` - [ ] Search the repo with Grep/Glob for existing code before creating any new file ## 1. Architecture: Services + Selectors Views are thin dispatchers. All business logic lives in services (writes) and selectors (reads). ### Layer Responsibilities | Layer | Location | Responsibility | Never Does | |:------|:---------|:---------------|:-----------| | View | `apps/*/views/` | Parse request, call service/selector, return response | ORM queries, business logic, mutations | | Selector | `app