O que trip-map-3d faz?
Transforme uma viagem em um site: um mapa 3D real por região, uma rota animada por dia, pins, cartões, clima e suporte offline. Tudo vem de um único arquivo, trip.yaml.
1. Pergunte sobre a viagem
Pergunte pelo que você não tem, algumas perguntas de cada vez:
- Onde, quando e quantos dias.
- Para cada dia: o que planejam fazer e em qual ordem. Apenas os nomes são suficientes.
- Onde ficam. Avise primeiro que o site é público em uma conta gratuita do GitHub, então um bairro é suficiente. Nunca escreva um endereço completo, a menos que insistam após esse aviso.
- Idioma (
en,pt-BR,es) e unidades. - Opcional: pontos de surfe, marés, fotos, um tema.
As fotos devem ser próprias ou licenciadas. Não baixe fotos da internet para eles.
2. Escreva trip.yaml
Siga examples/trip.example.yaml. Apenas title, dates.start e days são obrigatórios. Sempre adicione a cidade a um nome de lugar: "Panteão, Roma", não "Panteão".
3. Construir e revisar
python -m pip install -r requirements.txt
python -m pipeline check trip.yaml
Leia o relatório linha por linha com o usuário. O geocodificador pode estar confiantemente errado, então mostre a eles cada lugar que encontrou. Qualquer linha marcada como CHECK precisa de atenção. Se um lugar estiver errado ou faltando, adicione lat e lon em places: em vez de tentar a pesquisa novamente.
Depois construa:
python -m pipeline build trip.yaml --out dist
python -m pip install -r requirements-dev.txt
python tools/check_site.py dist --shots shots --hashes "" dia-1
Abra as capturas de tela e olhe para elas antes de dizer que funciona. Verifique se todos os lugares cabem, nenhuma rota fica sob um cartão e nenhum erro foi impresso.
4. Publicar, apenas após o usuário confirmar
Confirme o nome do repositório e que ele será público. Então:
- Envie para um repositório criado a partir deste modelo.
- Em Configurações, Pages, defina Source como GitHub Actions. Esta etapa é manual.
- O workflow constrói e publica a cada push.
Regras
- Serviços públicos são compartilhados. Nunca itere sobre eles.
trip.lock.jsonmantém cada resposta: faça commit e nunca o exclua para tentar novamente. - Este projeto não usa a API pública do Nominatim. Sua política proíbe de ser embutida em ferramentas como esta como um geocodificador genérico. Se o usuário perguntar sobre Nominatim, aponte para a política de uso e para
services.geocoderpara sua própria instância. - A API gratuita Open-Meteo é para uso não comercial. Uma agência de viagens precisa de uma chave paga: defina
services.open_meteo_key. - Mantenha os créditos de dados no site. Eles são legalmente exigidos (veja
DATA_SOURCES.md).