Stage 3.4
This commit is contained in:
155
README.md
155
README.md
@@ -7,3 +7,158 @@ Build
|
||||
-----
|
||||
|
||||
$ rebar3 compile
|
||||
|
||||
# EventHub - Шпаргалка по Makefile командам
|
||||
|
||||
## 🚀 Разработка
|
||||
|
||||
| Команда | Описание |
|
||||
|---------|----------|
|
||||
| `make compile` | Скомпилировать проект |
|
||||
| `make shell` | Запустить интерактивную Erlang оболочку |
|
||||
| `make run` | Запустить приложение в foreground |
|
||||
| `make start` | Запустить приложение в фоне |
|
||||
| `make stop` | Остановить приложение |
|
||||
| `make restart` | Перезапустить приложение |
|
||||
| `make logs` | Показать логи |
|
||||
| `make console` | Подключиться к запущенной ноде |
|
||||
| `make clean` | Очистить проект |
|
||||
| `make deps` | Установить зависимости |
|
||||
| `make update-deps` | Обновить зависимости |
|
||||
|
||||
---
|
||||
|
||||
## 🧪 Тестирование
|
||||
|
||||
| Команда | Описание |
|
||||
|---------|----------|
|
||||
| `make test` | Алиас для `make eunit` |
|
||||
| `make eunit` | Запустить все EUnit тесты |
|
||||
| `make eunit-verbose` | EUnit тесты с подробным выводом |
|
||||
| `make eunit-module MODULE=имя` | Тесты для конкретного модуля |
|
||||
| `make test-api` | Запустить API тесты (сервер должен быть запущен) |
|
||||
| `make test-auth` | Только тесты аутентификации |
|
||||
| `make test-calendar` | Только тесты календарей |
|
||||
| `make test-event` | Только тесты событий |
|
||||
| `make test-booking` | Только тесты бронирований |
|
||||
| `make test-all` | Все тесты (EUnit + API) |
|
||||
| `make cover` | Тесты с отчётом о покрытии кода |
|
||||
|
||||
---
|
||||
|
||||
## 🔍 Качество кода
|
||||
|
||||
| Команда | Описание |
|
||||
|---------|----------|
|
||||
| `make dialyzer` | Статический анализ кода |
|
||||
| `make xref` | Проверка кросс-ссылок |
|
||||
| `make lint` | Проверка стиля кода |
|
||||
| `make format` | Форматирование кода (требуется erlfmt) |
|
||||
| `make docs` | Генерация документации EDoc |
|
||||
|
||||
---
|
||||
|
||||
## 📦 Релиз и Docker
|
||||
|
||||
| Команда | Описание |
|
||||
|---------|----------|
|
||||
| `make release` | Собрать production релиз |
|
||||
| `make tar` | Создать tar.gz архив релиза |
|
||||
| `make docker-build` | Собрать Docker образ |
|
||||
| `make docker-run` | Запустить Docker контейнер |
|
||||
| `make docker-stop` | Остановить Docker контейнер |
|
||||
|
||||
---
|
||||
|
||||
## 🛠 Утилиты
|
||||
|
||||
| Команда | Описание |
|
||||
|---------|----------|
|
||||
| `make status` | Проверить статус сервера (healthcheck) |
|
||||
| `make tree` | Показать структуру проекта |
|
||||
| `make info` | Показать информацию о проекте и API |
|
||||
| `make help` | Показать все доступные команды |
|
||||
|
||||
---
|
||||
|
||||
## 👨💻 Рабочий процесс разработки
|
||||
|
||||
| Команда | Описание |
|
||||
|---------|----------|
|
||||
| `make dev-setup` | Настройка окружения (deps + compile) |
|
||||
| `make dev-test` | Быстрый цикл: compile + eunit |
|
||||
| `make dev-watch` | Автокомпиляция при изменениях (требуется entr) |
|
||||
|
||||
---
|
||||
|
||||
## 📋 Git хелперы
|
||||
|
||||
| Команда | Описание |
|
||||
|---------|----------|
|
||||
| `make git-status` | Показать статус Git |
|
||||
| `make git-log` | Показать лог (последние 10 коммитов) |
|
||||
| `make git-save` | Commit + push (запросит сообщение) |
|
||||
|
||||
---
|
||||
|
||||
## 🔧 Примеры использования
|
||||
|
||||
```bash
|
||||
# Запустить тесты для конкретного модуля
|
||||
make eunit-module MODULE=core_booking_tests
|
||||
|
||||
# Запустить приложение, затем API тесты
|
||||
make run & make test-api
|
||||
|
||||
# Полный цикл: очистка, компиляция, тесты
|
||||
make clean compile eunit
|
||||
|
||||
# Проверить статус сервера
|
||||
make status
|
||||
|
||||
# Собрать Docker образ и запустить
|
||||
make docker-build && make docker-run
|
||||
```
|
||||
|
||||
## 🎯 Полезные сочетания
|
||||
```bash
|
||||
# Остановить всё, очистить, собрать заново, запустить тесты
|
||||
make stop && make clean && make compile && make eunit
|
||||
|
||||
# Запустить сервер в фоне и проверить статус
|
||||
make start && sleep 3 && make status
|
||||
|
||||
# Посмотреть структуру проекта
|
||||
make tree
|
||||
|
||||
# Показать информацию о проекте
|
||||
make info
|
||||
```
|
||||
📡 API Эндпоинты (порт 8080)
|
||||
|
||||
| Метод | Путь | Описание |
|
||||
|-------|----------|----------|
|
||||
| POST | /v1/register | Регистрация пользователя |
|
||||
| POST | /v1/login | Логин (получение JWT) |
|
||||
| POST | /v1/refresh | Обновление токена |
|
||||
| GET | /v1/user/me | Профиль текущего пользователя |
|
||||
| GET | /v1/user/bookings | Бронирования пользователя |
|
||||
| POST | /v1/calendars | Создание календаря |
|
||||
| GET | /v1/calendars | Список календарей |
|
||||
| GET | /v1/calendars/:id | Получение календаря |
|
||||
| PUT | /v1/calendars/:id | Обновление календаря |
|
||||
| DELETE | /v1/calendars/:id | Удаление календаря |
|
||||
| POST | /v1/calendars/:id/events | Создание события |
|
||||
| GET | /v1/calendars/:id/events | Список событий календаря |
|
||||
| GET | /v1/events/:id | Получение события |
|
||||
| PUT | /v1/events/:id | Обновление события |
|
||||
| DELETE | /v1/events/:id | Удаление события |
|
||||
| GET | /v1/events/:id/occurrences | Вхождения повторяющегося | события
|
||||
| DELETE | /v1/events/:id/occurrences/:time | Отмена вхождения |
|
||||
| POST | /v1/events/:id/bookings | Запись на событие |
|
||||
| GET | /v1/events/:id/bookings | Список бронирований события |
|
||||
| GET | /v1/bookings/:id | Получение бронирования |
|
||||
| PUT | /v1/bookings/:id | Подтверждение/отклонение |
|
||||
| DELETE | /v1/bookings/:id | Отмена бронирования |
|
||||
| GET | /health | Healthcheck |
|
||||
---
|
||||
Reference in New Issue
Block a user