Skip to content

LeviLucena/ClimaBlue_Brasil

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 

Repository files navigation

Python Flask Meteoblue API OpenWeatherMap Dotenv Requests Pytest Docker Docker Compose Status: Em desenvolvimento MIT License

logo 5555

🌤️ 🌾 Previsão Meteorológica Inteligente: Sistema de Visualização de Meteogramas Focado no Agronegócio

A meteorologia sempre foi uma aliada estratégica do agronegócio. Seja no planejamento de safras, no manejo de irrigação ou na prevenção de perdas por eventos extremos, o conhecimento antecipado das condições climáticas é vital. Pensando nisso, desenvolvi uma aplicação web focada na visualização de meteogramas – gráficos detalhados que mostram a previsão do tempo de forma visual e intuitiva – com integração à API da Meteoblue, uma das mais confiáveis do mundo.

🌾 Impacto para o Agronegócio O Brasil é uma potência agrícola, mas também um país vulnerável a eventos climáticos severos, como: Geadas no Sul, Longos períodos de seca no Centro-Oeste, Chuvas excessivas na Região Norte e Nordeste.

Aplicação web desenvolvida em Flask para visualização interativa de meteogramas a partir da API Meteoblue. Suporte a diversos tipos de meteogramas e seleção dinâmica de capitais brasileiras.


📌 Descrição

Esta aplicação permite ao usuário escolher um estado brasileiro; automaticamente, ela identifica as coordenadas da capital correspondente e gera diferentes tipos de meteogramas usando a API Meteoblue. Com uma interface moderna, amigável e responsiva, construída com Bootstrap 5, proporciona uma experiência intuitiva. O backend em Flask gera URLs personalizadas dos meteogramas, com parâmetros ajustáveis, incluindo o idioma em português. (Assista ao vídeo


⚙️ Funcionalidades

  • 🗺️ Seleção dinâmica de estado brasileiro com preenchimento automático de latitude e longitude.
  • 🌡️ Escolha entre diversos tipos de meteogramas suportados pela API Meteoblue.
  • 🚩 Suporte opcional para altitude, aumentando a precisão dos meteogramas.
  • 📊 Visualização direta e interativa do meteograma na página.
  • 🚫 Tratamento e exibição de erros em tempo real.
  • 📱 Interface responsiva com Bootstrap 5.
  • 🐍 Backend em Python com Flask.
  • 🇧🇷 Suporte ao idioma português nos meteogramas.

🧪 Exemplo de Uso

20250525_160130.mp4

💻 Tecnologias Utilizadas

  • Python 3.x
  • Flask
  • Jinja2
  • Bootstrap 5
  • API Meteoblue

🌍 Fontes de Dados

Fonte Descrição Frequência
Meteoblue Dados meteorológicos Horária

🗂️ Estrutura do Projeto

project_root/  
│  
├── app/  
│   ├── __init__.py                 # Inicializa a aplicação Flask  
│   ├── config.py                   # Configurações (ex: API keys, env vars)  
│   ├── routes.py                   # Rotas Flask (endpoints e páginas)  
│   ├── services/  
│   │   ├── __init__.py  
│   │   └── meteogram_generator.py # Geração das URLs dos meteogramas  
│   ├── templates/  
│   │   └── index.html              # Página principal (template Jinja2)  
│   ├── static/                     # Arquivos estáticos (CSS, JS, imagens)  
│   └── utils/  
│       └── __init__.py             # Funções auxiliares (se necessário)  
│  
├── tests/  
│   └── test_meteogram_generator.py # Testes unitários  
│  
├── requirements.txt               # Dependências do Python  
├── run.py                         # Script para rodar a aplicação  
├── .env                           # Variáveis de ambiente (API key, configs)  
└── README.md                      # Documentação do projeto  

🚀 Como começar

Instalação

  1. Clone o repositório:
git clone https://github.com/LeviLucena/ClimaBlue_Brasil.git
cd ClimaBlue_Brasil
  1. Crie e ative um ambiente virtual (recomendado):
python -m venv venv
# Windows
venv\Scripts\activate
# Linux/Mac
source venv/bin/activate
  1. Instale as dependências:
pip install -r requirements.txt
  1. Configure sua API Key No arquivo .env na raiz do projeto, inclua sua chave da API Meteoblue:
METEOBLUE_API_KEY=SUA_CHAVE_API_AQUI
  1. Rode a aplicação Para rodar a aplicação localmente:
python run.py

Acesse no navegador em: http://127.0.0.1:5000.

🤝 Contribuições

Sinta-se à vontade para contribuir, sugerir melhorias ou relatar problemas para ajudar a desenvolver este projeto.

📄 Licença

Este projeto está licenciado sob a licença MIT — veja LICENSE para detalhes.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published