Olá! Este projeto já não está a ser mantido, e já não vai ser mais atualizado. A quem acompanhou, obrigado!
Este projeto foi desenvolvido com o intuito de mostrar o estado atual do plano de vacinação contra a covid-19. É um trabalho em progresso que vai sofrer atualizações ao longo do tempo, e também recebe os últimos números relacionados com administração das vacinas. Todo o código é público (incluindo também os desenhos originais do site), para que seja possível ser adaptado para outras utilizações, e os dados também são atualizados diretamente neste repositório. Para do dashboard, é também disponibilizada um API que pode ser consumida por outras aplicações. Se tiveres alguma sugestão de gráficos que sejam pertinentes, podes contribuir diretamente para o código, ou podes enviar sugestões por e-mail.
Ver SOURCES.MD
- ChartJS
- React
- NextJS
- Pusher para sockets
- Firebase Cloud Messaging + Web Push API para notificações (incluindo notificações com o site desligado)
- MongoDB para gerir tokens de notificações
- JSON como serviço de dados
- Github Actions para CI
- Github Hooks (para lançar um novo deploy)
VercelJá não estamos na Vercel!- Cloudflare
git clone https://github.com/alicescfernandes/mapa-vacinacao-c19/
docker build -t vacinacaocovid19 .
docker run -d -p 80:3000 -P --name vacinacaocovid19 vacinacaocovid19 # site em localhost:80
Ver SETUP.MD
pip3 install -r requirements.txt
# JS
npm install
# ou
yarn
npm link # ou sudo npm link
daemon_data # comando para fazer update aos dados
npm run start
# ou
yarn start # abre no localhost:3000
Os dados são scrappados com um cron job que vai às fontes, retira o JSON e atualiza o respositório ao código.
Existem duas maneiras de lançar o scrapper bot: através de um screen
ou pelo o pm2
- Screen
sudo apt install screen
# este comando vai correr o daemon_data num screen chamado daemon.
# -S daemon [nome], -d -> detached mode, -m -> abrir sempre uma nova janela; -dm -> abrir uma nova janela em detached mode
screen -S daemon -dm bash -c "daemon_data; exec bash"
screen -S daemon -X quit # para terminar o screen chamado daemon
screen -r daemon # entrar dentro do screen chamado daemon. Para sair é pressionar CTRL+A e depois D
- PM2
npm install -g pm2
pm2 start daemon_data --name "daemon" # lançar o processo
pm2 restart daemon # restart do processo
pm2 stop daemon # parar o processo
pm2 logs daemon # Ler logs do processo
pm2 list # Ver todos os processos geridos pelo pm2
pm2 monit # Ver status de todos os processos geridos pelo pm2