Backend приложения "100 дней бега".
Возможности: функционал работы с пользователем(регистрация, авторизация, аутентификация), получение тренировок, ачивок, истории, сохранение истории.
Проект использует Poetry как инструмент управления зависимостями.
-
Клонировать репозиторий.
git clone git@github.com:Diary-workout-tracker/diary-workout-tracker-backend.git cd diary-workout-tracker-backend -
Создание и активация виртуального окружения при помощи poetry
2.1 Создание отдельного окружения
python -m venv venv source venv/Scripts/activateдля Linux и macOS
python3 -m venv venv source venv/bin/activate2.2 Использование poetry
pip install poetry poetry shell poetry install
Примечание: версия python должна быть ^3.11.
- Инициализация pre-commit.
poetry run pre-commit install
- Создайте и заполните файл
.envсогласно шаблону .env.example - Выполнить команду Make в консоли.
make project-init-dev # при первом запускеmake project-start-dev # при последующих запусках
- Создание нового проекта:
poetry new new_project - Установка зависимостей:
poetry install - Запуск виртуального окружения:
poetry shell - Внедрение Poetry в уже имеющийся проект:
poetry init - Обновление зависимостей:
poetry update - Добавление новой библиотеки:
poetry add <имя_библиотеки> - Удаление зависимости:
poetry remove <имя_библиотеки> - Просмотр зависимостей:
poetry show - Запуск из виртуального окружения:
poetry run <команда>
Важно С использованием poetry, выполнение команд из виртуального окружения происходит через poetry run <команда>.
- Установить pre-commit в проекте:
pre-commit install - Запустить проверку всех хуков:
pre-commit run -a - Запустить конкретный хук:
poetry run pre-commit run <имя-хука> - Деактивировать автоматическое выполнение хуков перед коммитом:
poetry run pre-commit uninstall - Обновить pre-commit хуки:
poetry run pre-commit autoupdate
- Удаление Volumes:
make clear-volumes-dev - Запуск контейнеров:
make start-containers-dev - Выполнить миграции Django:
make migrate-dev - Собрать статику Django:
make collectstatic-dev - Создать супер пользователя:
make createsuperuser-dev - Загрузка фикстур достижений
make loadachievment-dev - Запуск сервера:
make start-server-dev - Инициализировать проект:
make project-init-dev - Запустить проект:
make project-start-dev - Остановить контейнеры:
make containers-stop-dev