Projeto Integrador desenvolvido para implementar um Ponto de Entrega Voluntária Inteligente (PEV).
O sistema utiliza sensores ultrassônicos e um ESP32 para medir a porcentagem de preenchimento de coletores, exibindo os dados em um display OLED e enviando-os em tempo real para o Firebase Realtime Database.
A solução tem como objetivo apoiar ONGs no gerenciamento de pontos de coleta, ao mesmo tempo em que engaja doadores, permitindo que verifiquem se os pontos estão ativos e recebendo doações.
O SmartCollect IoT busca tornar os Pontos de Entrega Voluntária mais eficientes e transparentes, permitindo:
- 📊 Monitoramento em tempo real da ocupação dos coletores
- 🌍 Integração com uma Plataforma Web para gestão dos pontos pelas ONGs
- 🙌 Engajamento dos doadores, que podem visualizar pontos ativos e em funcionamento
- ONGs → Gerenciar pontos de coleta com mais eficiência
- Doadores → Acompanhar a atividade dos pontos em tempo real
- Comunidade → Incentivo à cultura de doação e reaproveitamento
Sensores ultrassônicos instalados nos coletores acompanham continuamente o nível de resíduos.
Interface web para exibição de indicadores, relatórios e gráficos comparativos.
Alertas automáticos são enviados quando a coleta é necessária, evitando deslocamentos desnecessários.
A solução promove práticas ecológicas em consonância com políticas de cidades inteligentes.
| Camada | Tecnologias |
|---|---|
| Front-end | HTML · CSS · JavaScript · React.js |
| Back-end | NodeJS |
| Banco de Dados | Firebase Firestore e Realtime |
| IoT | Sensores ultrassônicos · Microcontrolador ESP32 |
| Versionamento | Git · GitHub |
A branch do Dispositivo que hospeda o IoT está disponível no seguinte link:
Exemplo de protótipo de dashboard:
- Node.js 22.13
- IDE (Visual Studio Code e etc...)
- Firebase Auth, Firestore e Realtime Configurado
- Keys das APIs necessárias
smart-collect-ui/
│
├── back/ # Arquivos públicos acessíveis diretamente, como ícones e imagens estáticas
│ ├── uploads/ # Pasta de imagens das ONGs
│ ├── index.js # Arquivo JS para base do backend
│ │
├── web/ # Código-fonte principal da aplicação
│ ├── public/ # Arquivos públicos acessíveis diretamente, como ícones e imagens estáticas
│ ├── src/ # Código-fonte principal da aplicação
│ │ ├── assets/ # Logos, ícones e outros arquivos estáticos usados no front-end
│ │ ├── components/ # Componentes reutilizáveis da interface (ex: Header, Footer, rotas protegidas)
│ │ ├── context/ # Componentes de Contexto da aplicação
│ │ ├── firebase/ # Componentes do Firebase Realtime e Firebase Firestore
│ │ ├── pages/ # Páginas principais do sistema (cadastro, login, home, etc.)
│ │ ├── providers/ # Bibliotecas provedoras
│ │ ├── utils/ # Funções utilitárias e helpers usados em diferentes partes do projeto
│ │ │
│ ├── .env.example # Exemplo de configuração das variáveis de ambiente
│ ├── index.html # Arquivo HTML base da aplicação React- Clone este repositório:
git clone https://github.com/vek03/smart-collect-gestao-de-pontos-de-entrega-voluntaria-para-ongs.git- Abra o projeto na sua IDE.
- Acesse o front end, rodando
cd web - Instale as dependências do front-end:
npm install- Rode o projeto em ambiente de desenvolvimento com o script NPM:
npm run dev- Em outro terminal, acesse a pasta da API, rodando
cd back - Instale as dependencias rodando
npm install - Rode a API com
npm start
Alternativamente, se tiver Docker na máquina, basta rodar
docker-compose up -dno terminal na pasta raiz da branch
🚀 Release v1.0-front-alpha - Primeira versão Alpha do FrontEnd
Este projeto é distribuído sob a licença GPL-3.0. Consulte o arquivo LICENCE para mais detalhes.
© 2025 Smart Collect — Todos os direitos reservados




