https://github.com/azevedontc/datapulse
DataPulse
https://github.com/azevedontc/datapulse
automation brazil cli data data-analysis matplotlib meteorology open-meteo pandas prevision pycharm python python3 reports venv weather
Last synced: about 2 months ago
JSON representation
DataPulse
- Host: GitHub
- URL: https://github.com/azevedontc/datapulse
- Owner: azevedontc
- License: mit
- Created: 2025-08-14T20:15:06.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-08-22T16:17:57.000Z (10 months ago)
- Last Synced: 2025-08-22T18:55:36.338Z (10 months ago)
- Topics: automation, brazil, cli, data, data-analysis, matplotlib, meteorology, open-meteo, pandas, prevision, pycharm, python, python3, reports, venv, weather
- Language: Python
- Homepage:
- Size: 233 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
📊 DataPulse
Daily, data-driven insights in Python — fetch → clean → visualize → write.
## Funcionalidades
- **3 fontes**: `weather` (Open-Meteo), `fx` (exchangerate.host) e **`aqi`** (Open-Meteo Air Quality).
- **Flags**: `--no-csv` e `--no-plot` para controlar o que salvar.
- **Relatórios semanais**: agregam os últimos 7 CSVs por fonte.
- **Robustez**: geocoding automático, retry/backoff, cache diário, Ãndice em `/reports/README.md`.
## Quickstart
```
bash
git clone https://github.com/azevedontc/dataPulse
cd dataPulse
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
```
## Diário
```
# Clima (3 dias)
python3 -m datapulse.cli --source weather --city "São Paulo" --days 3
# Câmbio BRL/USD (7 dias)
python3 -m datapulse.cli --source fx --base BRL --quote USD --days 7
# Qualidade do ar (AQI, 3 dias)
python3 -m datapulse.cli --source aqi --city "São Paulo" --days 3
```
## Semanal
```
# via Makefile
make weekly-weather # clima (últimos 7 CSVs)
make weekly-fx # câmbio
make weekly-aqi # qualidade do ar
# ou via Python
python -c "from datapulse import build_weekly_summary as b; b('reports','weather')"
```
## Rotina
```
# diário (no main)
source .venv/bin/activate
git pull
python3 -m datapulse.cli --source weather --city "São Paulo" --days 3
python3 -m datapulse.cli --source fx --base BRL --quote USD --days 7
python3 -m datapulse.cli --source aqi --city "São Paulo" --days 3
git add reports/
git commit -m "chore(reports): add daily report for YYYY-MM-DD"
git push
```
### Dashboard (Streamlit)
```
# instalar dependência (se ainda não tiver)
pip install streamlit
# rodar
make dashboard
# ou
streamlit run streamlit_app.py
```