diff --git a/README.md b/README.md
index a9456b6..b214549 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,166 @@
-# minicrm
+# miniCRM
+
API мини CRM приложеение
[](https://github.com/dmsnback/minicrm/actions/workflows/main.yml)
[](https://github.com/dmsnback/minicrm/actions/workflows/main.yml)
+[](https://github.com/dmsnback/minicrm/actions/workflows/main.yml)
+
+
+- [Описание](#Описание)
+- [Технологии](#Технологии)
+- [Таблица эндпоинтов](#Таблица)
+- [Шаблон заполнения .env-файла](#Шаблон)
+- [Запуск проекта на локальной машине](#Запуск)
+- [Автор](#Автор)
+
+
+### Описание
+
+MiniCRM — это backend-сервис для управления клиентами, сделками и комментариями, реализованный на FastAPI с асинхронной работой через PostgreSQL.
+
+Проект ориентирован на практическую разработку API с авторизацией, ролями пользователей и правами доступа.
+
+REST API для управления:
+
+- Клиентами (CRUD)
+- Сделками (CRUD, статусы, фильтрация по менеджерам)
+- Комментариями к сделкам
+- Пользователями с ролями (admin / manager)
+- Авторизацией через JWT
+
+Приложение написано с использованием **асинхронного FastAPI**, **SQLAlchemy**, **PostgreSQL** и **FastAPI Users**.
+
+
+> [Вернуться в начало](#Начало)
+
+
+### Технологии
+
+
+[](https://www.python.org)
+[](https://fastapi.tiangolo.com)
+[](https://fastapi-users.github.io/fastapi-users/latest/)
+[](https://www.sqlalchemy.org)
+[](https://docs.pydantic.dev/latest/)
+[](https://www.docker.com)
+[](https://www.postgresql.org)
+[](https://github.com/features/actions)
+
+> [Вернуться в начало](#Начало)
+
+
+### Таблица эндпоинтов
+
+**Авторизация**
+
+|Метод|URL|Описание|Доступ|
+|:-:|:-:|:-:|:-:|
+|POST|/auth/register|Регистрация новых менеджеров|Админ|
+|POST|/auth/jwt/login|получение JWT токена|Админ
Менеджер|
+
+**Пользователи**
+
+|Метод|URL|Описание|Доступ|
+|:-:|:-:|:-:|:-:|
+|GET|/users/all|Список всеех менеджеров|Админ|
+|GET|/users/{user_id}/clients|Получение списка клиентов менеджра по id|Админ|
+|GET|/users/me|Получение текущего юзера|Админ
Менеджер|
+|PATCH|/users/{id}|Редактирование юзера|Админ|
+|DELETE|/users/{id}|Удаление юзера|Админ|
+
+**Клиенты**
+
+|Метод|URL|Описание|Доступ|
+|:-:|:-:|:-:|:-:|
+|GET|/clients/all|Список всех клиентов
(Админ видит всех, менеджер - своих)|Админ
Менеджер|
+|GET|/clients/{clients_id}|Получение клиента по id|Админ
Менеджер|
+|PATCH|/clients/{clients_id}|Редактирование клиента|Админ
Менеджер|
+|DELETE|/clients/{clients_id}|Удаление клиентв|Админ|
+|POST|/clients|Добавление нового клиента|Админ
Менеджер|
+
+**Сделки**
+
+|Метод|URL|Описание|Доступ|
+|:-:|:-:|:-:|:-:|
+|GET|/deals/all|Список всех сделок
(Админ видит вс своих)|Админ
Менеджер|
+|GET|/deals/{deals_id}|Получение сделки по id|Админ
Менеджер|
+|PATCH|/deals/{deals_id}|Редактирование сделки|Админ
Менеджер|
+|DELETE|/deals/{deals_id}|Удаление сделки|Админ|
+|POST|/deals|Добавление новой сделки|Админ
Менеджер|
+
+**Комментарии**
+
+|Метод|URL|Описание|Доступ|
+|:-:|:-:|:-:|:-:|
+|GET|/comments/{deal_id}/comments|Получить все комментарии сделки|Админ
Менеджер|
+|POST|/comments/{deal_id}/comments|Добавление комментария к сделке|Админ
Менеджер|
+|PATCH|/comments/{deal_id}/comments/{comment_id}|Редактирование комментария|Админ
Менеджер|
+|DELETE|/comments/{deal_id}/comments/{comment_id}|Удаление комментария|Админ|
+
+> [Вернуться в начало](#Начало)
+
+
+
+### Шаблон заполнения .env-файла
+
+> `env.example` с дефолтнными значениями расположен в корневой папке
+
+```python
+POSTGRES_DB = minicrmdb # Имя базы дданнных
+POSTGRES_USER = postgres # Имя юзера PostgreSQL
+POSTGRES_PASSWORD = yourpassword # Пароль юзера PostgreSQL
+DATABASE_URL = postgresql+asyncpg://postgres:yourpassword@db:5432/minicrmdb # Указываем адрес БД
+DEBUG = False # Включеение/Выключение режима отладки
+APP_TITLE = МиниCRM приложение # Название приложения
+SECRET = SUPERSECRETKEY # Секретный ключ для подписания JWT токенов
+FIRST_SUPERUSER_USERNAME = superadmin # Указываеем usernsme для суперюзера
+FIRST_SUPERUSER_EMAIL = superadmin@mail.com # Указываеем почту для суперюзера
+FIRST_SUPERUSER_PASSWORD = superadmin # Указываеем пароль для суперюзера
+FIRST_SUPERUSER_ROLE = admin # Указываеем роль для суперюзера
+
+```
+
+> [Вернуться в начало](#Начало)
+
+
+
+### Запуск проекта на локальной машине
+
+- Склонируйте репозиторий
+
+```python
+git clone git@github.com:dmsnback/minicrm.git
+```
+
+- Запускаем Docker контейнер
+
+```python
+docker-compose up -d --build
+```
+
+- Выполняем миграции
+
+```python
+docker-compose exec backend alembic upgrade head
+```
+
+- Создаём суперюзера
+
+```python
+docker-compose exec backend python create_superuser.py
+```
+
+> __Документация к API будет доступна по адресу:__
+
+[http://localhost:8000/docs/](http://localhost:8000/docs/)
+
+> [Вернуться в начало](#Начало)
+
+
+
+### Автор
+
+- [Титенков Дмитрий](https://github.com/dmsnback)
+
+> [Вернуться в начало](#Начало)
diff --git a/app/routers/comments.py b/app/routers/comments.py
index 0fb8f5f..7b61447 100644
--- a/app/routers/comments.py
+++ b/app/routers/comments.py
@@ -22,7 +22,7 @@
@comment_router.get(
- "", response_model=list[CommentReadSchema], summary="Получить комментарии сдделки"
+ "", response_model=list[CommentReadSchema], summary="Получить комментарии сделки"
)
async def get_comments_deal(
deal_id: int,
@@ -54,7 +54,7 @@ async def create_comment(
@comment_router.patch(
"/{comment_id}",
response_model=CommentReadSchema,
- summary="Измеенеение ккомментария",
+ summary="Изменение ккомментария",
)
async def update_comment(
deal_id: int,
@@ -74,7 +74,7 @@ async def update_comment(
@comment_router.delete(
"/{comment_id}",
- summary="Удаление ккомментария",
+ summary="Удаление комментария",
description="Доступно только администратору",
)
async def delete_commennt(
diff --git a/docker-compose.yaml b/docker-compose.yaml
index 6cb5ca5..4d545c8 100644
--- a/docker-compose.yaml
+++ b/docker-compose.yaml
@@ -10,7 +10,7 @@ services:
env_file:
- ./.env
backend:
- image: dmsn/minicrm:${{IMAGE_TAG}}
+ image: dmsn/minicrm:dev
restart: always
depends_on:
- db
diff --git a/env.example b/env.example
new file mode 100644
index 0000000..7060e75
--- /dev/null
+++ b/env.example
@@ -0,0 +1,11 @@
+POSTGRES_DB = minicrmdb
+POSTGRES_USER = postgres
+POSTGRES_PASSWORD = yourpassword
+DATABASE_URL = postgresql+asyncpg://postgres:yourpassword@db:5432/minicrmdb
+DEBUG = False
+APP_TITLE = МиниCRM приложение
+SECRET = SUPERSECRETKEY
+FIRST_SUPERUSER_USERNAME = superadmin
+FIRST_SUPERUSER_EMAIL = superadmin@mail.com
+FIRST_SUPERUSER_PASSWORD = superadmin
+FIRST_SUPERUSER_ROLE = admin