Rede de Apoio: Aldeia Virtual
Bem vindx, ao meu projeto! Sinta-se a vontade para explorar, ele foi desenvolvido como requisito final para a conclusão do curso "Todas em Tech" da {reprograma}.
Minha experiência com a maternidade, principalmente a maternidade solo, me fez perceber o quão as mães estão - na maioria das vezes - sozinhas num período tão sensível. A maternidade acaba por ser um período de solidão por não ser tão discutida em sua totalidade, o que pode ser observado é uma romantização de um momento marcado por mudanças drásticas nos quesitos hormonal, corporal, psicológico.
Em alguns casos, a maternidade vem acompanhada de depressão pós parto; confusão por não se reconhecer mais diante daquele corpo; estranhamento numa rotina que por muitas vezes não foi planejada ou desejada. Ter acesso a uma rede de profissionais que possam ser essa rede de apoio é algo que também divide as mães negras, interioranas e periféricas.
O projeto "Rede de Apoio: Aldeia Virtual" é voltado para mulheres que fazem parte da população em vulnerabilidade financeira que necessitam ter acesso a profissionais que auxiliem em questões psicológicas, psiquiátricas e legais que permeiam a maternidade. Sendo assim ela é dividida em duas partes:
- Profissionais: um espaço de consulta e cadastro de profissionais que trabalham cobrando valor social ou pro bono.
- Textos randômicos: mensagens afirmativas que reforçam que a maternidade não é perfeita, não é romântica, mas é única e está tudo bem.
- Listar todos os Profissionais da API;
- Listar Profissionais por meio de filtros;
- Cadastro, atualização e exclusão de profissionais;
- Criação, atualização e exclusão de textos;
- Listar todos os Textos da API;
- Gerar um texto randômico.
Desenvolvida utilizando JavaScript e Node.js, a API conta com dois CRUDs completos que respeitam princípios de SOLID e Clean Code. Utilizando a conexão com bando de dados MongoDB e as rotas foram testadas no Postman.
📁PROJETO FINAL
|
|- 📁 assets
|- 📁 src
| |
| |- 📁 controllers
| |- 📑 professionalController.js
| |- 📑 textController.js
|
| |- 📁 database
| |- 📑 mongoConfig.js
|
| |- 📁 models
| |- 📑professionalSchema.js
| |- 📑textSchema.js
|
| |- 📁 routes
| |- 📑indexRoutes.js
| |- 📑professionalRoutes.js
| |- 📑textRoutes.js
|
| |- 📑 app.js
| |- 📑 swagger.json
|
|
|- 📑 .env
|- 📑 .env.example
|- 📑 .gitignore
|- 📑 package-lock.json
|- 📑 package.json
|- 📑 Procfile
|- 📑 README.me
|- 📑 server.js
TECNOLOGIAS
Método HTTP | Endpoint | Descrição |
---|---|---|
GET | http://localhost:PORT/ |
Apresentação do projeto |
Método HTTP | Endpoint | Descrição |
---|---|---|
GET | /professionals/search |
Lista todos os profissionais cadastrados |
GET | /professionals/search-occupation |
Filtra os profissionais pela ocupação |
GET | /professionals/search-gender |
Filtra os profissionais pelo gênero |
GET | /professionals/search-probono |
Filtra os profissionais que fazem pro bono |
GET | /professionals/search/:id |
Filtra os profissionais pelo ID |
POST | /professionals/register |
Cadastro dos profissionais |
PUT | /professionals/update/:Id |
Atualizar o cadastro de algum profissional |
DELETE | professionals/delete/:id |
Deletar um cadastro por ID |
Método HTTP | Endpoint | Descrição |
---|---|---|
GET | /texts/all |
Listar todos textos cadastrados |
GET | /texts/random |
Mostrar uma mensagem aleatória previamente cadastrada |
GET | /texts/:id |
Filtra o texto por ID |
POST | /texts/new |
Cadastra um novo texto |
PUT | /texts/update/:id |
Atualiza uma texto |
DELETE | /texts/delete/:id |
Deleta um texto por ID |
-
Primeiro é necessário clonar o seguinte repositório:
$ git clone https://github.com/anaelisaq/rede-apoio.git
-
Entre na seguinte pasta:
$ cd PROJETO-REDE-APOIO/
-
Para prosseguir, é necessário baixas as dependências:
$ npm install
-
Inicie o projeto com o comando:
$ npm run dev
Cadastrando um profissional
Listando todos os profissionais cadastrados
Filtrando pela ocupação:
Filtrando pelo gênero:
Filtrando por pro bono:
Encontrando por ID:
Atualizando o cadastro de um profissional:
Deletando o cadastro de um profissional:
Cadastrando texto:
Listando todos os textos cadastrados:
Selecionando um texto aleatório do banco de dados:
Selecionando por ID:
Atualizando texto:
Deletando um texto por ID:
- ⬛ Desenvolver um front-end;
- ⬛ Adaptar a API para um formato de APP;
- ⬛ Implementar mensagens introdutórias nos endpoints primários
/professionals
e/texts
; - ⬛ Implementar cadastramento, autenticação de usuários;
- ⬛ Implementar espaço para compartilhamento de experiências entre as mães;
- ⬛ Implementar espaço para troca de itens usados;
- ⬛ Implementar testes unitários.