QRKot - это API, разработанное для благотворительного фонда, целью которого является сбор средств для помощи нашим пушистым друзьям.
- Регистрация и работа с пользователями
- Создание и редактирование администратором благотворительных проектов
- Внесение пожертвований пользователями
- Автоматическое инвестирование поступающих пожертвований в открытые проекты
-
Проекты - эндпоинт /charity_project/
- Просмотр всех проектов (любой пользователь)
- Создание целевых проектов (только для суперюзера)
- Частичное изменение проектов (только для суперюзера)
- Удаление проектов, кроме уже инвестированных (только для суперюзера)
-
Пожертвования - эндпоинт /donation/
- Создание пожертвования (авторизованный пользователь)
- Просмотр своих пожертвований (только для их владельца)
- Просмотр всех пожертвований (только для суперюзера)
-
Пользователи - эндпоинты /auth/ и /users/
- Регистрация пользователя
- Аутентификация пользователя
- Получение текущего пользователя (только для владельца)
- Изменение текущего пользователя (только для владельца)
- Получение любого пользователя по его id (только для суперюзера)
- Изменение любого пользователя по его id (только для суперюзера)
Для более подробного изучения функционала API, установите проект на свой компьютер согласно инструкции, изложенной ниже, запустите проект и перейдите по следующим ссылкам:
http://127.0.0.1:8000/docs
http://127.0.0.1:8000/redoc
1. Клонировать репозиторий и перейти в папку c проектом
git clone git@github.com:ItsFreez/QRKot.git
cd QRKot
2. Cоздать и активировать виртуальное окружение
Для Windows
python -m venv env
source venv/Scripts/Activate
Для MacOS/Linux
python3 -m venv env
source env/bin/activate
3. Обновить менеджер pip и установить зависимости из файла requirements.txt
python -m pip install --upgrade pip
pip install -r requirements.txt
4. Применить миграции для создания базы данных
alembic upgrade head
5. Создать файл .env и установить свои параметры на примере файла env.example
6. Запустить проект
uvicorn app.main:app --reload