.PHONY: help dev build-frontend install run serve test deploy FRONTEND_DIR := web/frontend help: @echo "Доступные цели:" @echo " make install — установить зависимости frontend (npm install)" @echo " make dev — запустить frontend в dev-режиме (vite, hot-reload)" @echo " make build-frontend — собрать production-билд frontend в $(FRONTEND_DIR)/dist/" @echo " make run — запустить API-сервер в dev-режиме (uvicorn --reload)" @echo " make serve — запустить API-сервер в prod-режиме (uvicorn, без --reload)" @echo " make test — запустить все тесты (pytest + vitest)" @echo " make deploy — установить python-зависимости, собрать frontend и запустить prod-сервер" install: cd $(FRONTEND_DIR) && npm install dev: cd $(FRONTEND_DIR) && npm run dev build-frontend: cd $(FRONTEND_DIR) && npm run build run: uvicorn web.api:app --reload --host 0.0.0.0 --port 8000 serve: uvicorn web.api:app --host 0.0.0.0 --port 8000 test: pytest tests/ cd $(FRONTEND_DIR) && npm run test deploy: build-frontend pip install -r requirements.txt $(MAKE) serve