сервис с функционалом:
-
создание таблицы
-
добавить пользователя
-
добавить пользователей
-
обновить пользователя
-
получить инфо по всем пользователям
-
получить инфо по всем пользователям с определенным параметром
-
проверка на валидацию email с использованием regex
-
сортировка всех пользователей по параметрам
-
получение валидного email по ФИО
-
страничка "/info" - отдает топ 3 (или более) пользователей по параметру
-
логирование записей в файл
-
Stack:
- python3
- asyncio
- FastAPI
- PostgreSQL
- sqlalchemy
- docker compose
- logging
- regex
-
Клонируйте репозиторий
git clone [email protected]:amalshakov/mega-base-app.git
- Создайте и активируйте виртуальное окружение
python -m venv venv
source venv/Scripts/activate
- Установите зависимости
pip install -r requirements.txt
- Запустите docker локально (например - docker desctop)
- Запустите программу
python -m app.main
- Программа попросит ввести вас ФИО (5 штук). Сформирует из них email'ы и добавит пользователей в базу.
- При вводе "Петров Денис Сергеевич" программа ответит примерно так: Такой Email уже есть. (сформированный по ФИО). Он занят и предложит альтернативный email.
- При вводе "Иванов Олег Петрович" программа ответит примерно так: Email'ы уже заняты (основной и альтернативный) (сформированные по ФИО). Предложит обратиться к администратору.
- Александр Мальшаков (ТГ @amalshakov, GitHub amalshakov)