Приложение для Благотворительного фонда поддержки котиков QRKot. Фонд собирает пожертвования на различные целевые проекты: медицинское обслуживание нуждающихся хвостатых, обустройство кошачьей колонии в подвале, корм оставшимся без попечения кошкам — на любые цели, связанные с поддержкой кошачьей популяции.
В Фонде QRKot может быть открыто несколько целевых проектов. После того, как нужная сумма собрана — проект закрывается. Все пожертвования идут в проект, открытый раньше других; когда этот проект набирает необходимую сумму и закрывается — пожертвования начинают поступать в следующий проект.
Каждый пользователь может сделать пожертвование и сопроводить его комментарием. Пожертвования вносятся в фонд, а не в конкретный проект. Если пожертвование больше нужной для проекта суммы или в Фонде нет открытых проектов — оставшиеся деньги ждут открытия следующего проекта. При создании нового проекта все неинвестированные пожертвования автоматически вкладываются в новый проект.
Целевые проекты создаются администраторами сайта. Любой пользователь может видеть список всех проектов, включая требуемые и уже внесенные суммы. Зарегистрированные пользователи могут отправлять пожертвования и просматривать список своих пожертвовани
Приложение имеет возможность формировать отчёт в Google-таблице. В таблицу включены закрытые проекты, отсортированные по скорости сбора средств — от тех, что закрылись быстрее всего, до тех, что долго собирали нужную сумму.
git clone https://github.com/Jullitk/cat_charity_fund.git
python -m venv venv
Для Linux
source venv/bin/activate
Для Windows
source venv/Scripts/activate
python -m pip install --upgrade pip
pip install -r requirements.txt
APP_TITLE=Кошачий благотворительный фонд (0.1.0)
DATABASE_URL=sqlite+aiosqlite:///./fastapi.db
SECRET=secret
[email protected]
FIRST_SUPERUSER_PASSWORD=password
TYPE = example
PROJECT_ID = example
PRIVATE_KEY_ID = example
PRIVATE_KEY = example
CLIENT_EMAIL = example
CLIENT_ID = example
AUTH_URI = example
TOKEN_URI = example
AUTH_PROVIDER_X509_CERT_URL = example
CLIENT_X509_CERT_URL = example
UNIVERSE_DOMAIN = example
EMAIL = '[email protected]'
alembic upgrade head
uvicorn app.main:app