23 Commits

Author SHA1 Message Date
aec3f41f4f fix: исправлен инициализатор класса UserManager
- Удалена передача модели пользователя в конструктор.
- Используется默认ная модель `User`.
2025-01-12 13:00:13 +04:00
c9de61e535 refactor: добавлены маршруты аутентификации в FastAPI проект
- Создан новый файл `routes.py` в директории `apps/auth`, содержащий маршруты для регистрации пользователя.
- В файле `__init__.py` в директории `apps` инициализирован роутер `apps_router` и подключен маршрут аутентификации.
- Обновлен файл `main.py` для включения роутера `apps_router`.
2025-01-12 13:00:04 +04:00
e421b6c0e1 docs: добавлены новые разделы README.md
All checks were successful
Lint project / lint (push) Successful in 47s
- Добавлены библиотеки pre-commit и CI Workflow.
- Обновлен список зависимостей в requirements.txt.
- Добавлены посты об улучшениях функциональности FastAPI.
- Обновлена секция Установки проекта.
2025-01-11 03:03:16 +04:00
c0ee89f175 feat: добавлен обработчик аутентификации
All checks were successful
Lint project / lint (push) Successful in 45s
- Создан новый модуль `handlers.py` для управления аутентификацией.
- Добавлена класс `AuthHandler` с методом для генерации хэшей паролей.
- Использование библиотеки `passlib` для обеспечения безопасного хранения паролей.
2025-01-11 02:30:55 +04:00
623e9ba325 feat: добавлен класс UserManager для управления пользователями
- Создан новый файл managers.py в директории lkeep/apps/auth.
- Внутри файла создан класс UserManager с методом create_user для создания пользователей.
- Метод create_user использует SQLAlchemy для взаимодействия с базой данных и обрабатывает исключения при добавлении существующего пользователя.
2025-01-11 02:30:39 +04:00
67f980d162 feat: добавлены схемы данных для авторизации в приложении
- Создан новый файл `schemas.py` в директории `lkeep/apps/auth`.
- Внутри файла определены несколько классов Pydantic для обработки различных сценариев работы с пользователями (получение по ID, электронной почте, регистрация и создание).
- Каждый класс имеет соответствующие поля и типы данных, а также документации в формате docstring.
- Добавлены комментарии к файлу для описания проекта, автора, года создания и специализации.
2025-01-11 02:30:26 +04:00
b71f6d2a81 docs: добавлены файлы инициализации для приложения и модуля аутентификации
- Созданы новые файлы `__init__.py` в директориях `lkeep/apps` и `lkeep/apps/auth`.
- Добавлены комментарии с метаданными о проекте, авторе, годе и цели.
2025-01-11 02:30:08 +04:00
2520d49a2b refactor: улучшенная структура и настройки приложения
- Добавлен атрибут `secret_key` для хранения секретного ключа.
- Обновлён класс `Settings` с использованием `SecretStr`.
- Изменены параметры конструктора в классе `DBDependency`, теперь они инициализируются через настройки.
2025-01-11 02:29:45 +04:00
b10286773a feat: добавлены зависимости для аутентификации и хеширования
- Добавлена зависимость `pydantic[email]` для поддержки Email в схемах модели данных.
- Добавлена зависимость `passlib` для упрощения процесса создания паролей.
- Добавлена зависимость `bcrypt` для безопасного хеширования паролей.
- Обновлен `.env.example` файл, добавлен параметр `SECRET_KEY` для настройки секретного ключа.
2025-01-11 02:29:25 +04:00
c6e82f292d docs: добавлены комментарии и документация в модули
All checks were successful
Lint project / lint (push) Successful in 53s
- Добавлены строки документации к модулю `main.py`.
- Добавлены строки документации к модулю `__init__.py`.
- Обновлена заголовочная информация для проекта.
2025-01-10 19:22:47 +04:00
e8de7e21f2 feat: добавлен модуль базы данных и модели пользователя
- Создан файл `__init__.py` в папке `lkeep/database/models` для инициализации модуля.
- Создан класс `Base` в `base.py` как базовый класс для всех ORM-моделей.
- Добавлена модель `User` в `user.py`, представляющая пользователя с необходимыми атрибутами.
2025-01-10 19:22:32 +04:00
a53ffb5213 feat: добавлены миксины для работы с идентификаторами и временными метками
- Создан файл `__init__.py` в пакете `lkeep.database.mixins`.
- Добавлен класс `IDMixin` для генерации уникальных идентификаторов.
- Создан файл `id_mixins.py` с реализацией миксина `IDMixin`.
- Добавлены классы `CreatedAtMixin`, `UpdatedAtMixin` и `TimestampsMixin` для управления временными метками в моделях SQLAlchemy.
2025-01-10 19:22:13 +04:00
ac19bb4397 docs: добавлены комментарии в core/settings.py и core/__init__.py
- Добавлены заголовочные комментарии в файлы settings.py и __init__.py.
- Обновлена метаинформация о проекте, авторе и году.
- Добавлена ссылка на специальный проект "Код на салфетке".
2025-01-10 19:21:47 +04:00
77e3066e6d feat: добавлены файлы для миграции базы данных Alembic
- Созданы новые файлы alembic/versions/2025_01_10_1706-ccf7560dd457_create_user_table.py, alembic/env.py, alembic/README.
- Добавлен новый конфигурационный файл alembic.ini для настройки Alembic.
- Создан шаблон для генерации миграционных скриптов в файле script.py.mako.
2025-01-10 19:21:25 +04:00
9b051edcf3 feat: добавлены зависимости архитектуры Alembic и форматирования Ruff
- Добавлена зависимость alembic версии 1.14.0 или выше, но ниже 2.0.0.
- Добавлена зависимость ruff версии 0.9.0 или выше, но ниже 0.10.0.
2025-01-10 19:21:04 +04:00
083b588289 feat: добавлены настройки подключения к базе данных и зависимость для взаимодействия с базой данных
All checks were successful
Lint project / lint (push) Successful in 53s
- Создан класс `DBSettings` в модуле `settings.py` для хранения параметров подключения к базе данных.
- Добавлен класс `DBDependency` в модуль `db_dependency.py`, который управляет взаимодействием с асинхронной базой данных с использованием SQLAlchemy.
- Обновлен модуль `__init__.py` для инициализации новых компонентов.
2025-01-10 15:37:29 +04:00
4e55c09b31 docs: обновлен README.md
All checks were successful
Lint project / lint (push) Successful in 42s
- Добавлена подробная документация сервиса Lkeep.
- Описаны основные технологии и зависимости проекта.
- Включены инструкции по установке и запуску приложения.
- Добавлены ссылки на статьи для новичков.
2025-01-10 05:07:54 +04:00
b541fdf57a feat: добавлен запуск FastAPI с использованием uvicorn и создание файла настроек
- Добавлена поддержка утилиты uvicorn для запуска приложения FastAPI.
- Создан новый модуль `settings.py` в пакете `core`, содержащий настройки базы данных.
2025-01-10 05:07:38 +04:00
a8272f71c2 feat: добавлены зависимости и скрипты для запуска приложения
- Обновлена секция `dependencies` в pyproject.toml: добавлены sqlalchemy, asyncpg и pydantic-settings.
- Добавлены переменные окружения в .env.example для настройки базы данных.
- Создан файл .gitignore для исключения IDE и файла с токенами.
- Обновлена секция [project.scripts] в pyproject.toml: добавлен скрипт app для запуска приложения.
2025-01-10 05:07:08 +04:00
16c079d2c7 feat: добавлен эндпоинт для FastAPI сервера
All checks were successful
Lint project / lint (push) Successful in 18s
- Первая статья https://pressanybutton.ru/post/servis-na-fastapi/fastapi-1-inicializaciya-proekta/
- Добавлена импорт библиотеки `FastAPI`.
- Создана экземпляр приложения `app` класса `FastAPI`.
- Определен асинхронный GET эндпоинт `/`, который возвращает статус.
2025-01-10 02:59:00 +04:00
d5ce79e55b feat: обновлены версии зависимостей и линтеров
All checks were successful
Lint project / lint (push) Successful in 18s
- Обновлена версия `poetry` до 2.0.0 в файлах `.gitea/workflows/lint.yaml` и `.github/workflows/lint.yaml`.
- Удалены неиспользуемые переменные окружения: `RUNNER_TOOL_CACHE`, `AGENT_TOOLSDIRECTORY`.

feat: обновлены версии зависимостей и линтеров

- Обновлена версия `poetry` до 2.0.0 в файлах `.gitea/workflows/lint.yaml` и `.github/workflows/lint.yaml`.
- Удалены неиспользуемые переменные окружения: `RUNNER_TOOL_CACHE`, `AGENT_TOOLSDIRECTORY`.
2025-01-10 02:51:59 +04:00
753834e7b5 feat: добавлены файлы конфигурации линтеров и GitHub Actions для проверки кода
Some checks failed
Lint project / lint (push) Failing after 2m23s
- Создан файл `.gitea/workflows/lint.yaml` для настройки проверок в Gitea.
- Добавлен файл `.pre-commit-config.yaml` с конфигурацией pre-commit hooks.
- Создан файл `.github/workflows/lint.yaml` для линтинга кода при push в GitHub.
2025-01-10 02:25:20 +04:00
4d3efdcd27 Initial commit 2025-01-10 01:43:19 +04:00