Все проекты
Open source Open source

project-template — фулстек-шаблон

Django и React в одном монорепо: общий OpenAPI-контракт, независимые пайплайны и образы, готовые к Kubernetes

Моя роль
Автор
Период
2026 — н.в.
Ссылки

Команда переходит на фулстек: один проект теперь включает и backend, и frontend и с первого дня готов к выкатке в кластер Kubernetes. project-template — основа для таких проектов. Он вырос из django-template: Django 5.2 + DRF на backend, React 19 + TypeScript + Vite на frontend и ops-слой с Docker Compose, nginx и CI.

Backend и frontend самодостаточны: у каждого свой Dockerfile, свои инструменты, свой CI и свой образ, а договариваются они через OpenAPI-контракт, из которого генерируется типизированный клиент. Образы не зависят от окружения, поэтому один и тот же образ идёт и в Compose на сервере, и в Kubernetes.

Что сделано

  • OpenAPI-контракт между командами: backend генерирует схему, frontend — типы, CI падает, если контракт устарел
  • Готовность к Kubernetes: настройки только из env, миграции отдельным release-шагом (Job в кластере), liveness и readiness, non-root, JSON-логи
  • Независимые пайплайны и деплой одного компонента, не трогая второй
  • Новый проект одной командой: скрипт переименовывает всё и выдаёт проекту свой порт
  • SPA и API на одном домене: без CORS, cookie и CSRF работают из коробки
  • CODEOWNERS для двух команд, Dependabot, pre-commit для Python и TypeScript

Стек

  • Django
  • Django REST Framework
  • OpenAPI
  • Docker
  • Kubernetes
  • TypeScript
  • React
  • Vite
  • Tailwind CSS

Ещё в этой категории

Open source Open source

react-template

Фронтенд-шаблон на React 19 и TypeScript в пару к django-template

Автор 2026

  • Docker
  • GitHub Actions
  • TypeScript
  • React
  • Vite
  • Tailwind CSS