К основному содержанию
скилл CX Codex

rest-api-django — скилл для Claude Code: правила Django REST API

Набор правил для ИИ-агента, который пишет Django REST API: структура проекта, сериализаторы, JWT-аутентификация, борьба с N+1.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add Mindrally/skills --skill rest-api-django -a claude-code
Открыть на GitHub

Что делает rest-api-django

Скилл задаёт агенту рамки при работе с Django REST Framework. Внутри — рекомендации по структуре приложения (models.py, managers.py, signals.py, tasks.py) и по API (api/v1/ с urls.py, serializers.py, views.py, permissions.py, filters.py). Агент будет держать бизнес-логику в моделях, а не во вьюхах, и использовать class-based views на базе DRF.

Отдельные блоки посвящены производительности и безопасности. Для запросов советуется select_related() и prefetch_related(), чтобы не ловить N+1, индексы на часто фильтруемых полях и transaction.atomic() для критичных операций. Аутентификация строится на djangorestframework_simplejwt, права выдаются по endpoint'ам, для сессионной аутентификации нужна CSRF-защита.

Ошибки приводятся к единому виду: флаг success, message, словарь errors по полям и error_code. Внутренние ошибки клиенту не отдаются. Учтите: скилл опирается на djangorestframework_simplejwt, так что в проекте без JWT часть рекомендаций придётся отбросить.

Какие задачи решает

  • разложить Django-проект по приложениям и папкам API
  • убрать N+1 запросы через eager loading
  • настроить JWT-аутентификацию и права по endpoint'ам
  • привести ответы об ошибках к одному формату
  • добавить пагинацию и кэш в list-эндпоинты

Примеры запросов агенту

  • Спроектируй структуру api/v1 для нового Django-приложения
  • Проверь мои вьюхи на N+1 и предложи select_related
  • Сделай единый формат ошибок с error_code для DRF

Как установить rest-api-django

1Через Skills CLI (Vercel)

npx skills add Mindrally/skills --skill rest-api-django -a claude-code

2Вручную: положить файлы

~/.claude/skills/rest-api-django/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/rest-api-django/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Из того же набора168

phoenix Задаёт агенту правила кода на Elixir и Phoenix: LiveView, Ecto, контексты, тесты. Пригодится, когда проект уже на Phoenix и нужен предсказуемый стиль. CX Codex +1 722установок solidity Скилл для написания и ревью Solidity-контрактов: паттерны защиты от reentrancy, оптимизация gas, тесты и связка с React-фронтендом. CX Codex +1 721установок autogen-development Подсказывает агенту, как писать код на Microsoft AutoGen: создание агентов, групповые чаты, инструменты, оркестрация. CX Codex +1 721установок vercel-development Набор правил для ИИ-агента: как писать код под Next.js App Router, React Server Components и Vercel AI SDK. Пригодится, когда агент лепит клиентские компоненты там, где хватило бы серверных. CX Codex +1 712установок rspec Задаёт агенту правила написания тестов на RSpec для Ruby и Rails: организация, данные, изоляция. Пригодится, когда спеки расползаются и дублируются. CX Codex +1 707установок angular-development Задаёт агенту правила Angular, SASS и TypeScript: строгая типизация, standalone-компоненты, сигналы. Пригодится, когда в проекте уже есть Angular. CX Codex +1 705установок stripe Правила интеграции Stripe для TypeScript, React и Next.js: приём платежей на сервере, подписки, вебхуки. Пригодится, когда агент пишет оплату в проекте. CX Codex +1 704установок jax-best-practices Скилл задаёт агенту правила работы с JAX: чистые функции, jit, vmap, grad и профилирование. Пригодится, если вы пишете численный код или обучаете модели на JAX. CX Codex +1 704установок

Похожие

django-expert https://github.com/Jeffallan Скилл помогает проектировать модели Django 5.0, настраивать сериализаторы DRF, оптимизировать ORM-запросы и конфигурировать аутентификацию по JWT. CX Codex +1 4 200установок django-drf prowler-cloud Скилл для быстрого создания REST API на Django с ViewSet'ами, сериализаторами и фильтрами по стандартам Prowler. Подключайте, когда пишете endpoints с RLS, JSON:API и OpenAPI документацией. CX Codex +1 482установок django-patterns affaan-m Помогает проектировать архитектуру Django и DRF: настраивать раздельные конфигурации, писать кастомные QuerySet и организовывать структуру приложений. CX Codex +1 5 200установок django-tdd affaan-m Скилл настраивает TDD-разработку в Django и DRF с помощью pytest-django и factory_boy. Помогает писать тесты для моделей, фикстуры и проверять API. CX Codex +1 4 700установок django-access-review getsentry Скилл ищет IDOR и дыры в авторизации Django: проходит по вьюхам, DRF-вьюсетам и ORM-запросам и показывает, где проверок не хватает. CX Codex +1 2 700установок django-developer VoltAgent Community Субагент для разработки бэкенда на Django 4+ и Python 3.11+. Помогает проектировать модели ORM, настраивать Django REST Framework и писать тесты. 344установок

Рядом в теме «Бэкенд и API»

Всё по теме «Бэкенд и API» →

Вопросы о rest-api-django

Как установить rest-api-django в Claude?

Выполните npx skills add Mindrally/skills --skill rest-api-django -a claude-code. Файл скилла окажется по пути ~/.claude/skills/rest-api-django/SKILL.md.

Что делает rest-api-django?

Даёт агенту правила разработки Django REST API: структура проекта, вьюхи, модели, сериализаторы, аутентификация, производительность и обработка ошибок.

Какие зависимости нужны для работы скилла?

В рекомендациях по аутентификации используется djangorestframework_simplejwt, для кэша — Redis или Memcached. Если JWT в проекте нет, эти советы не подойдут.

Исходный текст

SKILL.md · Apache-2.0
---
name: rest-api-django
description: Comprehensive guidelines for Django REST API development covering project structure, views, models, serializers, authentication, performance, and error handling.
metadata:
  maintainer: Mindrally
  source: https://github.com/Mindrally/skills
---

# REST API Development with Django

You are an expert in Django REST Framework for building scalable APIs.

## Core Principles

- Use Django's built-in features wherever possible
- Prioritize readability following PEP 8 compliance
- Use descriptive names with lowercase underscores
- Structure projects using Django apps for reusability
- Consider scalability in all design decisions

## Project Structure

### Application Structure
```
app_name/
  migrations/       # Database migrations
  admin.py          # Admin configuration
  models.py         # Data models
  managers.py       # Custom model managers
  signals.py        # Django signals
  tasks.py          # Celery tasks
```

### API Structure
```
api/
  v1/
    urls.py         # URL routing
    serializers.py  # DRF serializers
    views.py        # API views
    permissions.py  # Custom permissions
    filters.py      # Query filters
```

## Development Guidelines

### Views and API Design
- Use class-based views with DRF's APIViews
- Follow RESTful principles for endpoint design
- Keep business logic in models, not views
- Maintain consistent response formats

### Models and Database
- Leverage Django ORM for all database operations
- Use `select_related()` and `prefetch_related()` to prevent N+1 queries
- Apply proper indexing on frequently queried fields
- Use `transaction.atomic()` for critical operations

### Serializers and Validation
- Use DRF serializers for all data transformation
- Implement custom validators for complex validation
- Handle nested relationships properly
- Keep serializers focused and composable

### Authentication and Authorization
- Use `djangorestframework_simplejwt` for JWT authentication
- Implement granular permissions per endpoint
- Ensure CSRF protection for session-based auth
- Apply principle of least privilege

### Performance Optimization
- Prevent N+1 queries through eager loading
- Implement database connection pooling
- Use Redis or Memcached for caching
- Apply standardized pagination to list endpoints

### Error Handling
```python
{
    "success": False,
    "message": "Validation failed",
    "errors": {
        "field_name": ["Error message"]
    },
    "error_code": "VALIDATION_ERROR"
}
```

- Use appropriate HTTP status codes
- Return consistent error response structure
- Apply structured logging for debugging
- Never expose internal errors to clients

© Mindrally · Apache-2.0 · Mindrally/skills

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой