Memex Admin

Backend: Django Ninja for New Endpoints

Repository: mem-labs/mem

activeUpdated Feb 19, 2026, 8:37 PM

Policy ID js72150rah9p55rx4pbj11g6a181d2v4

New backend API routes must use Django Ninja, not DRF.

Rationale:
- Standardizing new endpoint implementation on Django Ninja improves consistency, typing, and docs generation.

Scope:
- PR review policy for new backend API routes under `domains/python/backend/app/src/api/**`.

Trigger:
- A PR introduces a new route (new path+method exposure), whether in a new or existing file.

Approval checks:
1) New route uses Django Ninja registration/patterns (`NinjaAPI`/`Router` route decorators or equivalent Ninja router registration).
2) New route does not introduce DRF endpoint patterns (`APIView`, `ViewSet`, DRF router/url registration, DRF function-based route patterns).

Evidence:
- Diff of route registration and imports shows Ninja usage for new route exposures.

Decision:
- Return NOT APPROVED when trigger is met and new route exposure uses DRF patterns.
- Edits to existing legacy DRF endpoints are allowed when they do not introduce new route exposures.