Skip to content

priscilaestevao/pretitudes-project-reprograma

Repository files navigation

Deploy on Heroku Database MongoDB Node version GitHub Repo Size GitHub Last Commit GitHub License

três pessoas negras segurando uma faixa com o nome Pretitudes

Pretitudes - Ocupação preta na política

Banco de dados de candidaturas negras que concorreram a eleição municipal 2020 na Região Metropolitana do Recife (PE).

Status: Concluído ✔️

Sumário

Apresentação

O "Pretitudes" é o projeto de conclusão do bootcamp de Back-end da {reprograma}, em parceria com o projeto MINAs do Porto Digital. Essa é uma API que tem por objetivo reunir informações sobre as candidaturas negras comprometidas com a pauta antirracista na Região Metropolitana do Recife.

A ideia é que ela possa ser aproveitada por um programa de formação política e qualificação, quem sabe até de investimento, potencializando o movimento negro no próximo pleito eleitoral em 2024.

Contextualização

mulher com um adesivo colado na mão escrito voto em negra

A ausência de representação negra nos parlamentos é um problema há muito denunciado pelos movimentos negros brasileiros. Se no Brasil mais de 56% das pessoas se declaram negras, os dados de composição racial nas casas legislativas espalhadas pelo país demonstram o tamanho do abismo. Segundo dados do TSE, negros somam 24,4% dos deputados federais e 28,9% dos deputados estaduais eleitos em 2018 e, dos vereadores eleitos em 2016, somam 42,1% de pretos e pardos. (Fonte: Votos Antirarcistas, 2020)

Fonte dos dados

Essa aplicação é desenvolvida em parceria com o #VotosAntirracistas, uma plataforma on-line que reúne e apresenta candidaturas negras comprometidas politicamente com as pautas históricas dos movimentos negros do Brasil, explicitadas no Manifesto Enquanto Houver Racismo Não Haverá Democracia, na Carta de Princípios e Agenda da Coalizão Negra por Direitos, na Agenda Marielle Franco e na Carta da Convergência Negra em defesa da vida, do emprego e da participação negra na política.

Também é usado como complemento de dados o site do Tribunal Superior Eleitoral - TSE.

Funcionalidades

  • Login de pessoa administradora da API (cadastro, atualização e remoção de administradores)
  • Cadastro de candidaturas negras
  • Lista de todas as candidaturas negras cadastradas
  • Lista de todos os movimentos sociais das candidaturas negras cadastradas
  • Lista de candidaturas negras por cidade da Região Metropolitana do Recife
  • Lista de candidaturas negras eleitas em 2020
  • Atualização de cadastro de candidaturas
  • Remoção de candidaturas que não façam parte de movimentos sociais

Tecnologias, bibliotecas e dependências

Git version Node version Node version Deploy on Heroku
npm version Express version Mongoose version Dotenv-safe version Bcrypt version Jsonwebtoken version Nodemon version

Instruções para instalação e contribuições no projeto

  • Faça um fork do projeto através do link (https://github.com/priscilaestevao/pretitudes-project-reprograma/fork);

  • Copie o código do fork realizado e, no prompt de comando da sua máquina, realize o clone do projeto através do git clone <link_do_fork_do_repositorio>;

  • Crie uma branch para realizar suas contribuições git checkout -b feature/<sua_branch>;

  • Instale as dependências necessárias à execução da API através do comando npm install;

  • No raiz do projeto, renomeie .env.example para .env e adicione os valores das variáveis PORT (porta sugerida 8080), MONGODB_URL (string de conexão com o banco de dados) e SECRET (chave RSA). Elas são necessárias para a execução da API em sua máquina

  • Para executar a API, utilize o comando npm start no seu terminal;

  • Após suas contribuições no projeto, realize o commit com o comando git commit -m 'sua mensagem';

  • Para subir o projeto no seu GitHub, basta executar o comando git push origin feature/<sua_branch>;

  • E finalize criando um novo Pull Request com as contribuições para o projeto original.

Features e rotas

Esta API está sendo escutada na porta 8080 e para que todas as rotas possam ser acessadas localmente é necessário usar http://localhost:8080/ antes dos endpoints de requisição.

Manipulando registros como pessoa usuária

Feature Método Rota
Lista de todas as candidaturas negras de 2020 GET /candidaturas-negras
Lista de todos os movimentos populares GET /candidaturas-negras/lista-movimentos
Filtro de candidaturas negras por cidade GET /candidaturas-negras/cidade/<nome-da-cidade>
Lista de candidaturas negras eleitas em 2020 GET /candidaturas-negras/eleitas2020

Manipulando registros como pessoa administradora (requer token de autenticação)

Feature Método Rota
Login de pessoa administradora POST /admin/login
Cadastro de candidaturas negras POST /candidaturas-negras
Atualização de cadastro de candidaturas por id PUT /candidaturas-negras/:_id
Remoção de candidaturas que não são de movimentos sociais DELETE /candidaturas-negras/participacao?movimentoSocial=unidefined
Cadastro de pessoa administradora POST /admin/
Lista de todas as pessoas administradoras GET /admin
Atualização de cadastro de pessoa administradora por id PUT /admin/:id
Remoção de pessoa administradora por email DELETE /admin?email=<email_da_pessoa_administradora_castrada>

Referências

{reprograma} - Projeto Final

Como escrever um README.md sensacional no Github

Inspiração: Pokemons API (autoria: @AnnaNee)

Tribunal Superior Eleitoral

Votos Antirracistas


Criado com 🖤 por Priscila Estevão e o apoio das professoras, monitoras, orientação pedagógica e minhas queridas companheiras de turma. Sou só gratidão!

Linkedin Badge