Разработка бэкенда для веб-приложения маркетплейса

Подход к разработке

Проект реализуется как структурированный монолит с четким разделением на модули, что позволит в дальнейшем при необходимости выделить их в микросервисы. Работа ведется поэтапно, каждые 1.5-2 недели поставляется работающий функционал, приносящий бизнес-ценность.

Ключевые принципы архитектуры

  • Структурированный монолит: единый проект, организованный в виде независимых модулей.
  • Четкие границы модулей: кодовая база организована таким образом, чтобы в будущем модули можно было легко выделить в отдельные микросервисы.
  • Полная документация: каждый модуль сопровождается документацией OpenAPI и комментариями к эндпоинтам, что формирует четкий API-контракт для фронтенд-разработчиков.

Этап 1: Ядро системы и аутентификация (Срок: 2 недели)

Цель этапа

Создать работоспособное ядро системы с базовой функциональностью, которое станет фундаментом для подключения остальных бизнес-модулей.

Задачи первого этапа

  • Создание структуры проекта на FastAPI с модулями: users, core.
  • Реализация аутентификации пользователей по SMS (с использованием стороннего SMS-сервиса).
  • Разработка моделей данных: User, Profile (PostgreSQL + SQLAlchemy ORM).
  • Настройка работы с JWT-токенами (access и refresh).
  • Создание базовой административной панели на основе FastAPI Admin.
  • Контейнеризация приложения с помощью Docker для удобства развертывания.

Результат этапа

  • Пользователи могут регистрироваться, входить в систему и редактировать свой профиль.
  • Проект готов к удобному развертыванию в разных окружениях.
  • Бэкенд подготовлен для интеграции с фронтендом (интеграция выполняется отдельно). После интеграции система будет полностью работоспособна и готова к демонстрации.

Разработка рабочей тетради в Notion для онлайн-курса

Необходимо создать структурированную и функциональную рабочую тетрадь в Notion для участников онлайн-курса. Задача включает проектирование логичной навигации, шаблонов для заданий и удобного интерфейса для обучения.