Home | Escopo | Processo | Mockups | Configuração | Arquitetura | Gerência | Código | BD | Qualidade | Utilização |
---|
Diagrama de arquitetura
Diagrama de Componentes Frontend
Na aplicação possuímos 3 divisões de componentes e fluxos de usuário, os fluxos admin e school servem para gerenciamento e são implementados componentes que sigam o modelo desktop, já o fluxo reader é para alunos dessas escolas, seus componentes e telas seguem o modelo mobile.
- Controller: Onde ficam as ações complexas dos componentes de cada usuário como as funções, exemplo o componente bookReader do fluxo aluno.
- Components: Estruturas que são necessárias para implementar outras estruturas, exemplo seriam headers e footers.
- Commons:Componentes comuns que são usados em toda aplicação, independente do fluxo de usuário eles podem ser reutilizados.
- Pages: Onde juntamos todas as estruturas de componentes e montamos a página de cada fluxo de usuário.
Fluxograma Backend
Módulos do Sistema
-
controller: é o ponto de entrada do backend, onde ficam definidos os endpoints da aplicação, ou seja, os caminhos após o endereço do servidor como
/user
e qual o tipo de chamada o endereço irá receberGET
,POST
,PUT
ouDELETE
. - documentation: possui a lista das chamadas de endpoint e funciona como uma ferramenta para testes.
- models: A camada de models define as entidades da aplicação, suas relações e regras de validação, permitindo que a camada repositories nteraja facilmente com o banco de dados.
- repository: centraliza toda a comunicação com o banco de dados, passando os parâmetros adequados para as funções desejadas.
-
service: centraliza todas as nossas regras de negócio, utilizando o
models
para fornecer os dados do banco e realizar as validações.
Como configurar o ambiente backend
Requisitos:
- PostgreSQL, preferencialmente com PgAdmin 4.
- Python 3.12 ou superior.
1 - Primeiramente, faça download dos requisitos descritos acima
Baixe a versão 16 do PostgreSQL através do link: https://www.enterprisedb.com/downloads/postgres-postgresql-downloads. Durante a instalação haverá uma checkbox perguntando se você deseja baixar PgAdmin 4, normalmente ela já estará marcada, mas certifiques-se de conferir. Além disso, durante a instalação o setup lhe pedirá para definir uma senha de acesso, coloque a senha padrão "postgres".
Já para o Python, não se esqueça de baixar a versão 3.12 ou superior, você pode realizar o download através do link: https://www.python.org/downloads/.
Após isso, adicione os recursos recém baixados nas Variáveis de Ambiente. No menu iniciar do Windows digite "Editar Variáveis de Ambiente do Sistema", clique no botão "Variáveis de Ambiente...", em seguida procure por Path na caixa Variáveis do Sistema, selecione-o e clique em "Editar...", clique no botão "Novo" e adicione o caminho das pastas "Python\Python312", "Python\Python312\Scripts" e "PostgreSQL\16\bin", semelhante a imagem a seguir.
1 - Com o projeto clonado na máquina local, certifique-se de que tudo está devidamente instalado:
psql --version
python --version
2 - Em seguida instale o gerenciador de dependências Poetry:
pip install poetry
Se ocorrer algum problema, verifique se o pip está corretamente instalado.
pip --version
Caso o sistema não identifique o comando "pip", instale-o
python -m ensurepip --upgrade
3 - Navegue até a raiz do projeto (pasta que contém pyproject.toml) para instalar as dependências do projeto com Poetry:
poetry install
4 - O Flask será instalado automaticamente, mas você pode verificar se a instalação ocorreu corretamente:
poetry run flask --version
5 - Ative o Ambiente Virtual:
poetry shell
6 - Normalmente essa ação não seria necessária, mas por garantia execute o commit:
flask db migrate -m "migração inicial"
7 - Migre a última versão do Banco de Dados:
flask db upgrade
8 - Instalar dependência para manipular PDFs
pip install PyPDF2
9 - Rode a aplicação:
flask --app app.py run
Não se esqueça de estar na raiz do projeto ao executar o projeto.
10 - Criar as tabelas no banco de dados automaticamente:
Abra o PgAdmin 4 e clique na setinha ao lado esquerdo de "Servers", o programa pedirá a senha definida durante a instalação, caso tenha configurado uma senha diferente de "postgres", você pode muda-la através do comando psql -U postgres
.
Em seguida, clique com o botão direito em Database vá em "Create > Database...", no campo Database digite "vir_db" e salve as configurações.
Ao abrir a database vir_db vá até a aba Schemas, lá você pode notar que aba Tables estará vazia, tudo que você precisa fazer é executar o código novamente com o PgAdmin aberto, se tudo ocorrer bem, as tabelas serão criadas automaticamente.