Данный проект позволяет создавать и вести учет благотворительных фондов и поступающих в них пожертвований. Проект написан на асинхронном движке фреймворка FastApi и умеет поддерживать большое количество транзакций. Отчет о деятельности проекта можно получить в сервисе Google Sheets.
- Создание администратором благотворительных проектов.
- Внесение пожертвований зарегистрированными пользователями.
- Автоматическое инвестирование поступающих средств в открытые проекты.
- Регистрация пользователей реализовано при помощи FastAPI Users.
- Возможность получить отчет о проектах в Google Sheets.
Стек проекта: Python 3.9, FastAPI 0.78.0, SQLAlchemy 1.4.36, pydantic 1.9.1, Alembic 1.7.7, Google API
- Скачать репозиторий:
git clone [email protected]:aten88/backend_charity_fund.git
- В корневом каталоге создайте файл .env и добавьте в него данные (при необходимости):
APP_TITLE=Some Fund Name # Название фонда
APP_DESCRIPTION=Some description # Описание фонда
DATABASE_URL=type_db+somemodule_db:///./somename.db # Путь подключения к БД
SECRET=SOMESECRETKEY # Ключ для генерации хэша
[email protected] # Почта для суперюзера по умолчанию(при желании)
FIRST_SUPERUSER_PASSWORD=SomeXXXSECRETPass##** # Пароль для суперюзера по умолчанию(при желании)
-
Установите и активируйте виртуальное окружение:
py3.9 -m venv venv Windows: source/venv/scripts/activate Linux/Mac OS: source/venv/bin/activate
-
Установите зависимости:
pip install -r requirements.txt
-
Создайте миграции:
alembic revision --autogenerate -m "First migration"
-
Примените миграции:
alembic upgrade head
-
Запустите проект:
uvicorn app.main:app --reload
При запущенном проекте откройте одну из ссылкок в браузере:
Swagger:
http://127.0.0.1:8000/docs
Redoc:
http://127.0.0.1:8000/redoc