Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/parlametria/perfil-parlamentar
Compatibilidade entre eleitor e os candidatos a Deputado Federal com base na Agenda Brasil Sustentável
https://github.com/parlametria/perfil-parlamentar
Last synced: 3 months ago
JSON representation
Compatibilidade entre eleitor e os candidatos a Deputado Federal com base na Agenda Brasil Sustentável
- Host: GitHub
- URL: https://github.com/parlametria/perfil-parlamentar
- Owner: parlametria
- License: agpl-3.0
- Created: 2018-07-21T15:35:46.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2023-02-28T02:01:15.000Z (over 1 year ago)
- Last Synced: 2024-03-21T02:08:25.984Z (3 months ago)
- Language: TypeScript
- Homepage: https://perfil.parlametria.org/
- Size: 9.51 MB
- Stars: 27
- Watchers: 7
- Forks: 7
- Open Issues: 33
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Lists
- awesome-social-projects - Voz Ativa
- docsify-awesome-stars - parlametria/perfil-parlamentar - Compatibilidade entre eleitor e os candidatos a Deputado Federal com base na Agenda Brasil Sustentável (TypeScript)
README
# [Perfil Parlamentar](https://perfil.parlametria.org/)
[![Build Status](https://travis-ci.org/analytics-ufcg/voz-ativa.svg?branch=master)](https://travis-ci.org/analytics-ufcg/voz-ativa)
[Documentação da API](https://perfil.parlametria.org/api/swagger/docs/)
# Sobre o projeto
O Perfil Parlamentar exibe informações sobre as pessoas que compõem a Câmara dos Deputados e o Senado do congresso brasileiro.
# Desenvolvimento
O projeto foi desenvolvido utilizando a arquitetura PEAN (Postgres Express Angular e Node).
Instale o [docker](https://docs.docker.com/install/linux/docker-ce/ubuntu/#install-docker-ce) e o [docker-compose](https://docs.docker.com/compose/install/).
## Inicialização do banco de dados
No [repositório de dados](https://github.com/parlametria/perfil-parlamentar-dados) do projeto siga as instruções do README para inicializar o banco de dados usando docker.
## Configuração das variáveis de ambiente
Faça uma cópia arquivo `variables.env.sample` para o arquivo `variables.env` e preencha com as chaves para as variáveis de ambiente.
## Iniciando docker
Após a definição das variáveis e com o banco de dados executando via docker. Rode com o docker executando:
```
docker-compose up
```Pronto, o desenvolvimento já pode ser iniciado!
A api estará disponível em: localhost:5000/api
O frontend estará disponível em: localhost:4200Caso for preciso reconstruir as imagens (backend e frontend) basta fazer:
```
docker-compose up --build
```**Limitação**: Alterações no arquivo package.json (do frontend ou do backend) exigem um rebuild (reconstrução) da imagem com o comando citado acima.
### Comandos úteis
Caso você queira parar os containers e remover os volumes execute:
```
docker-compose down --volumes
```Para visualizar os containers rodando:
```
docker ps
```Para executar comandos num shell dentro do container:
```
docker exec -it sh
```Para matar um container
```
docker kill
```# Desenvolvimento sem Docker
## Configuração das variáveis de ambiente
É necessário exportar as variáveis de ambiente para que o projeto possa ser executado. Essa é a lista de variáveis necessárias:
- SECRET_OR_KEY
- POSTGRESURI
- FACEBOOK_APP_ID
- FACEBOOK_APP_SECRET
- GOOGLE_APP_ID
- GOOGLE_APP_SECRETPara exportar use, como exemplo, o comando abaixo (no terminal):
```
export SECRET_OR_KEY="umsupersegredo"
```Obs: a variável POSTGRESURI deve ter o seguinte formato `postgres://:@postgres:5432/vozativa`
## Instalação de dependências
### Para o backend
```
npm install
```### Para o frontend
```
npm run client-install
```## Execução do projeto
### Para execução do backend
```
npm run server
```### Para execução do frontend
```
npm run client
```# Testes
Os testes são escritos usando [chai](https://www.chaijs.com) e rodam via [docker-compose](https://github.com/mochajs/mocha).
### Executar testes
```
npm test
```