Versão Parcial - Dashboard para visualização de dados de solo em tempo real desenvolvido com Next.js, TypeScript e Firebase Realtime Database.
Esta é a versão de visualização do sistema que monitora parâmetros fundamentais do solo para agricultura de precisão:
- pH - Acidez/alcalinidade do solo
- Condutividade Elétrica - Salinidade e nutrientes
- Temperatura do Solo - Condições para crescimento
- Umidade do Solo - Irrigação otimizada
- NPK - Nitrogênio, Fósforo e Potássio
- Next.js 14 - Framework React com App Router
- TypeScript - Tipagem estática para dados precisos
- Tailwind CSS - Interface responsiva e moderna
- Firebase Realtime Database - Banco de dados em tempo real utilizado pelo backend da aplicação
- Lucide React - Ícones intuitivos para cada parâmetro
- Node.js 18+ instalado
- Projeto Firebase criado com Realtime Database habilitado
npm install- Crie um projeto no Firebase Console
- Habilite o Realtime Database no seu projeto
- Obtenha as credenciais seguindo o guia em
docs/COMO_CONFIGURAR_FIREBASE.md
Em seguida, crie um arquivo .env.local na raiz do projeto com suas credenciais:
FIREBASE_DATABASE_URL=https://seu-projeto-default-rtdb.firebaseio.com
FIREBASE_SERVICE_ACCOUNT='{"type":"service_account","project_id":"...",...}'📖 Para instruções detalhadas, consulte: docs/COMO_CONFIGURAR_FIREBASE.md
- 📊 Dashboard de Visualização - Exibe dados consolidados do solo
- 🔄 Atualização Automática - Busca dados a cada 30 segundos do banco
- 📱 Interface Responsiva - Funciona perfeitamente em mobile e desktop
- 📈 Histórico de Medições - Visualização dos últimos registros de cada dispositivo
- 🏷️ Identificação de Dispositivos - Mostra qual dispositivo (DF) enviou cada dado
- ⏱️ Timestamps - Exibe data/hora exata de cada medição
- 📋 Estados Vazios - Interface amigável quando não há dados disponíveis
Collection parametro_solo no Firebase:
{
"ph": 6.8,
"timestamp": 1704067200000
}- O campo
phé obrigatório e deve ser numérico. - O backend gera automaticamente o
id(chave do Firebase) e otimestampda leitura.
curl -X POST http://localhost:3000/api/parametro-solo \
-H "Content-Type: application/json" \
-d '{"ph": 6.8}'- Configure seu dispositivo IoT para enviar dados para a rota
/api/parametro-solo - Teste a integração usando os exemplos em
examples/data-sample.json - Monitore os dados em tempo real através do dashboard
- Configure alertas baseados nos parâmetros críticos
- Deploy para produção quando necessário
.env.local- Contém suas credenciais do Firebasefirebase-service-account.json- Arquivo de credenciais (se usar a opção de arquivo)node_modules/- Dependências (são reinstaladas automaticamente).next/- Build files gerados automaticamente
- Credenciais do Firebase estão no
.gitignore env.examplemostra a estrutura sem dados reais- NUNCA faça commit das credenciais do Firebase no Git!
Sinta-se à vontade para contribuir com melhorias e novas funcionalidades!