Servidor do trabalho de experiência criativa - 5º período BSI PUCPR.
A GiveLink consiste em uma plataforma onde doadores e instituições como ONGs, hospitais podem se conectar e realizar doações pela plataforma.
Recomendamos rodar o projeto utilizando o Docker:
- Docker/Docker Desktop
Se deseja rodar o projeto sem o Docker, os requisitos são basicamente:
- pyhton >= 3.12
Para configurar as variáveis de ambiente, adicione as seguintes variáveis no arquivo .env (pasta root):
DATABASE_URL
SECRET_KEY
ALGORITHM
ACCESS_TOKEN_EXPIRE_MINUTES
PASSWORD_TEST
POSTGRES_USER
POSTGRES_DB
POSTGRES_PASSWORD
Caso esteja usando o Docker, rode o comando para buildar a aplicação:
docker compose up --build
Este comando irá buildar a imagem docker da aplicação contendo o servidor FastAPI (Uvicorn) e o banco de dados relacional PostgreSQL.
Se não estiver usando o Docker:
python3 -m venv .venv
./source .venv
pip install -r requirements.txt
task run
Com a configuração do projeto em pyproject.toml, o comando task run irá rodar a aplicação.
Caso seja a primeira vez que o projeto é buildado, será inserido no banco as roles de admin e user e também o usuário administrador.
Assim é possível testar o servidor em http://localhost:8000 e acessar a documentação Swagger em http://localhost:8000/docs ou http://localhost:8000/redoc
Ainda, é possível configurar e rodar os testes com:
./source setup_test.sh
task tesk
No geral o sistema contem as 5 entidades abaixo, a entidade central do sistema é a donation, no caso, é um entidade relacionamento que representa as doação executadas de um doador para uma instituição, os modelos db estão no arquivo src/models/db_schemas.py.
Os modelos pydantic estão em arquivos específicos na pasta src/models.

- Dirceu
- Giordano
- Victor Gabriel
- Vinícius Yudi


