Projeto que visualiza estilos musicais nos Estados Unidos usando um mapa interativo. O mapa é gerado usando Python e diversas bibliotecas, incluindo Folium, GeoPandas e Geopy.
- Mapa Interativo: Exibe estilos musicais por estado e cidade, com popups contendo informações contextuais.
- Geocodificação: Busca automática de coordenadas para cidades e estados usando Geopy.
- Integração Wikipedia: Adiciona links da Wikipedia para gêneros musicais.
- Sistema de Cache: Armazena coordenadas de cidades para melhor performance.
- Banco de Dados: Armazenamento persistente em SQLite.
- Monitoramento: Sistema de observação de mudanças em tempo real.
musical-map-project/
├── src/ # Código fonte principal
│ ├── main.py # Script principal do mapa
│ ├── add_wikipedia_links.py # Integração com Wikipedia
│ ├── populate_database.py # População do banco de dados
│ └── watch_database.py # Monitoramento de mudanças
├── tests/ # Testes unitários e de integração
├── data/ # Dados e banco SQLite
├── output/ # Arquivos gerados
├── config/ # Arquivos de configuração
├── project/ # Documentação do projeto
└── backup/ # Backup de dados importantes
A documentação completa do projeto está organizada no GitHub Projects, dividida em três áreas principais:
- Python 3.9 ou superior
- Bibliotecas: Ver
requirements.txt - SQLite 3
-
Clone o repositório:
git clone <repository-url> cd musical-map-project
-
Instale as dependências:
pip install -r requirements.txt
-
Configure o banco de dados:
python src/populate_database.py
-
Execute o script principal para gerar o mapa:
python src/main.py
-
Abra o arquivo
output/musical_map.htmlem um navegador. -
Opcional: Adicione links da Wikipedia:
python src/add_wikipedia_links.py
-
Para monitorar mudanças no banco de dados:
python src/watch_database.py
Execute os testes unitários:
pytestO projeto está em evolução ativa, com foco em:
- Sistema totalmente autônomo
- Interface mais interativa
- Melhor arquitetura e manutenibilidade
- Necessária conexão com internet para geocodificação e Wikipedia
- Cache de coordenadas em
data/city_coords_cache.json - Backup automático dos dados em
backup/ - Logs de execução em
output/logs
Este projeto está licenciado sob a Licença MIT. Veja o arquivo LICENSE para detalhes.