Skip to content

gdserafini/givelink-server

Repository files navigation

GiveLink

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.

Configuração e como rodar o projeto

Requisitos

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

Configuração

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

Modelagem de dados

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. Data modeling

Funcionamento

Flow

Diagrama de classes

Classes

Ex: Diagrama de sequencia Signup

Sequence

Equipe

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

About

Servidor do trabalho de Experiência Criativa - 5º período BSI PUCPR

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages