Este projeto possui o objetivo principal de construir uma aplicação Back-end, de custo zero, para a ONG Saúde da Rua que tem como missão levar atendimento médico humanizado e recorrente às camadas mais vulneráveis da sociedade.
Para executar o projeto é necessário ter instalado o Node.js, o Serverless framework e uma conta AWS.
Faça o clone do projeto e configure seu perfil no arquivo Serverless.
- Node
- Typescript
- Serverless Framework
- AWS Lambda
- Amazon DynamoDB
- Amazon S3
- Amazon API Gateway
- Amazon SNS
- Eslint (eslint-config-airbnb-base)
- Prettier
- Plugin do Typescript para o Serverless (serverless-plugin-typescript)
- AWS Software Dev. Kit (aws-sdk)
- AWS Lambda Functions (aws-lambda)
- Jest
O sistema é composto por um banco de dados, funções lambdas AWS e um serviço gerenciado que fornece entrega de mensagens de editores para assinantes (SNS).
As funcionalidades principais são:
- F1 - Cadastro de administradores com nível de permissão
- F2 - CRUD de voluntários
- F3 - Criação e remoção de PDF's.
- F4 - Criação e remoção de Imagens.
As ferramentas utilizadas para o desenvolvimento incluem Node.js que é uma linguagem de programação utilizada para o Back-end, para front-end foi utilizado React. DynamoDB atuando como banco de dados não relacional e o Serverless framework para configurar o ambiente, e o Yarn como gerenciador de pacotes
- RF1 - Criação de painel para administradores
- RF2 - Formulário para cadastro de voluntários
- RF3 - Adicionar e remover PDF's.
- RF4 - Adicionar e remover imagens.
Rotas utilizadas pela aplicação web para executar metodos de POST e GET no banco de dados. Onde o retorno de cada uma das funções estará contido em uma sessão para renderização de páginas web.
Verbo | Rota | Funcionalidade |
---|---|---|
POST |
/login | Faz login como administrador. |
POST |
/create/admin | Cria um usuário adiministrador. |
POST |
/create/volunteer | Cria um usuário voluntário. |
GET |
/get/volunteers | Lista os usuários voluntários do banco de dados. |
GET |
/get/one_volunteer | Exibe um usuário em particular. |
GET |
/verify/volunteer-email | Verifica o email de um usuário voluntário. |
PUT |
/update/volunteer/{email} | Atualiza um usuário em particular. |
-
SOLID - SOLID são cinco princípios da programação orientada a objetos que facilitam no desenvolvimento de softwares, tornando-os fáceis de manter e estender. Esses princípios podem ser aplicados a qualquer linguagem de POO.
- Filtros de consulta no painel de administrador;
- Consultas complexas;
- Documentação de API com Swagger UI com deploy no Github Pages