💬 Transformando sugestões dos cidadãos em ações reais para cidades mais inteligentes, sustentáveis e resilientes.
Movimento Global – Comunidade de Ideias Cidadãs
Francisco Isaias Oliveira de Sou, Daniel da Cruz Fortes
Outubro/2025
É criar uma Comunidade Global de Ideias, desenvolvida em React (Web) e React Native (Aplicativo Mobile). Com o objetivo é conectar pessoas interessadas em propor soluções que contribuam para tornar suas cidades mais inteligentes, sustentáveis e resilientes.
O propósito central é criar um movimento global de participação cidadã, unindo tecnologia e engajamento social para transformar ideias em ações concretas. A iniciativa visa promover resiliência urbana e adaptação às mudanças climáticas, abordando temas como desenvolvimento sustentável, mobilidade, energia, inclusão social, planejamento urbano e qualidade de vida.
As cidades enfrentam desafios significativos devido à urbanização acelerada e desordenada. A infraestrutura muitas vezes não acompanha o crescimento populacional, resultando em congestionamentos, poluição e baixa qualidade de vida.
Além disso, há uma lacuna de comunicação entre cidadãos e gestores públicos, o que faz com que boas ideias e sugestões acabem não sendo aproveitadas.
🎯 Público-alvo: cidadãos ativos, gestores públicos, educadores e organizações que buscam soluções urbanas inovadoras.
O foco inicial são cidades médias e grandes das regiões Sudeste e Sul do Brasil.
O Movimento Global – Comunidade de Ideias Cidadãs é uma plataforma digital que conecta cidadãos, gestores e especialistas para transformar ideias em ações concretas.
👥 Os usuários podem enviar sugestões de melhorias urbanas, votar nas ideias mais relevantes e acompanhar o progresso de sua implementação.
📚 A plataforma também oferece um mini curso educativo sobre mudanças climáticas e resiliência urbana, capacitando cidadãos a participarem de forma consciente.
A solução combina tecnologia, educação e engajamento social, promovendo cidades mais inteligentes, sustentáveis e participativas.
O projeto contempla:
- 💻 Interface web responsiva e acessível, permitindo interação de usuários de diferentes perfis.
- 💡 Sistema de cadastro, envio e votação de ideias, com dashboard de métricas.
- 🔥 Integração com Cloud Firestore para armazenamento seguro e em tempo real.
- 🎓 Módulo educacional com mini curso sobre sustentabilidade urbana e resiliência.
- 📨 Geração de ofícios automáticos para envio de propostas aos órgãos públicos competentes.
- Desenvolvimento de aplicativo mobile nativo.
- Chat em tempo real entre usuários e gestores.
- Execução física das ações nas cidades (a plataforma atua apenas na fase digital).
- 🧠 GitHub: https://github.com/skynetsites/cidades-resilientes
- 🌐 Demo: https://skynetsites.github.io/cidades-resilientes
- 👩💻 Cidadão: enviar ideias para melhorar minha cidade, acompanhar popularidade e receber feedback.
- 🏛️ Gestor público: visualizar ideias prioritárias e tomar decisões com base em dados reais.
- 🧑🏫 Educador: utilizar o mini curso para promover consciência cidadã e ambiental.
- 👨🔧 Desenvolvedor: garantir que a plataforma seja funcional, segura e fácil de manter.
- Cadastro e autenticação de usuários via Google (Firebase Authentication).
- Envio, votação e acompanhamento de ideias urbanas.
- Dashboard administrativo com métricas e relatórios.
- Módulo educativo interativo com quizzes e conteúdos multimídia.
- Interface responsiva e acessível (WCAG 2.1).
- Segurança de dados via autenticação Firebase.
- Código modular e escalável.
- Hospedagem confiável via Vercel (front-end) e Firebase Hosting (opcional).
- Front-end: ⚛️ React + Next.js + TypeScript + TailwindCSS
- Back-end: ☁️ Firebase (Cloud Firestore + Authentication)
- Banco de Dados: 🗃️ Cloud Firestore
- Autenticação: 🔑 Firebase Authentication (Login com Google)
- Hospedagem: 🌎 Github Pages / Vercel / Firebase Hosting
- Integrações: 🔗 Firestore / Google APIs
📊 Fluxo da Arquitetura:
Usuário → Interface Web (Next.js) → Firebase Authentication → Cloud Firestore (armazenamento e sincronização em tempo real)
┌───────────────┐
│ Usuário │
└──────┬────────┘
│
▼
┌───────────────┐
│ Front-end │
│ React + │
│ Next.js + │
│ TypeScript + │
│ TailwindCSS │
└──────┬────────┘
│
▼
┌───────────────┐
│ Firebase │
│ Authentication│
└──────┬────────┘
│
▼
┌────────────────┐
│ Cloud Firestore│
└──────┬─────────┘
│
▼
┌───────────────┐
│ Dashboard │
│ Idias / │
│ Comentários / │
│ Relatórios / │
│ Mini Curso / │
└───────────────┘
Toda a API é fornecida pelo Firebase (Firestore e Authentication).
- POST /ideas → Enviar nova ideia
- GET /ideas → Listar ideias existentes
- GET /ideas → Listar comentários existentes
- POST /vote → Votar em uma ideia
- GET /votes → Obter contagem de votos por ideia (apenas admin)
- GET /users → Listar usuários cadastrados (apenas admin)
- POST /auth/google → Login via Google
Observação: Todos os endpoints são protegidos via Firebase Authentication.
- Node.js v18+
- Conta no Firebase Console
- Git
Clone o repositório:
git clone https://github.com/skynetsites/cidades-resilientes.git
cd cidades-resilientes
Instale as dependências:
npm install
Configure as variáveis de ambiente (.env.local):
NEXT_PUBLIC_FIREBASE_API_KEY=SUACHAVE
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=seuprojeto.firebaseapp.com
NEXT_PUBLIC_FIREBASE_PROJECT_ID=seuprojeto
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=seuprojeto.appspot.com
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=000000000000
NEXT_PUBLIC_FIREBASE_APP_ID=1:000000000000:web:xxxxxxxxxxxxx
Inicie o servidor de desenvolvimento:
npm run dev
Acesse a aplicação em:
👉 http://localhost:3000
- Acesse o Firebase Console e clique em Adicionar Projeto.
- Dê um nome, aceite os termos e aguarde a criação.
- Vá até Firestore Database → Criar Banco de Dados
- Escolha o modo Produção
- Defina o local (ex:
southamerica-east1) - Após criado, visualize e edite documentos em tempo real.
- Vá até Authentication → Método de Login
- Ative o Login com Google
- Configure o domínio autorizado (ex:
http://localhost:3000ou o domínio da Vercel).
- Vá até Configurações do Projeto → Suas Apps → Configurações Web
- Copie o objeto de configuração e cole os valores no arquivo
.env.local.
Para hospedar o back-end:
npm install -g firebase-tools
firebase login
firebase init hosting
firebase deploy
- Crie uma conta em https://vercel.com
- Conecte o repositório do GitHub
- Adicione as variáveis de ambiente (
NEXT_PUBLIC_FIREBASE_*) - Clique em Deploy
🌐 Publicado automaticamente em poucos minutos 🎉
-
Configure o build do Next.js (
next.config.js):
const nextConfig = {
output: 'export',
images: { unoptimized: true },
trailingSlash: true,
};
export default nextConfig; -
Gere os arquivos estáticos:
npm run build -
Publique no branch gh-pages:
git add .
git commit -m "Build estático para GitHub Pages"
git subtree push --prefix out origin gh-pages -
Configure em Settings → Pages → branch gh-pages → /root
🌐 Acesse: https://seuusuario.github.io/cidades-resiliente/
Metodologia: Scrum adaptado, com sprints quinzenais gerenciadas via GitHub Projects.
| 🧩 Etapa | ⏰ Período | 📦 Entregas |
|---|---|---|
| Sprint 1 | 01–15/09 | Planejamento, definição de escopo e wireframe |
| Sprint 2 | 16–30/09 | Desenvolvimento do MVP |
| Sprint 3 | 01–15/10 | Integração com Firebase e testes |
| Sprint 4 | 16–28/10 | Validação final e apresentação |
| 💼 Função | 👤 Responsável | 🧭 Atribuições |
|---|---|---|
| Diretoria Executiva | Isaias Oliveira | Coordenação geral, definição de metas e acompanhamento das entregas |
| Administração | Daniel Fortes | Controle de documentação e recursos |
| Desenvolvimento | Isaias Oliveira | Criação, manutenção e integração com Firebase |
| Marketing / Comercial | Daniel Fortes | Divulgação e engajamento de usuários |
| Conteúdo / Educação | Isaias Oliveira Daniel Fortes |
Criação do mini curso e materiais educativos |
O Movimento Global é uma iniciativa inovadora que une tecnologia, educação e engajamento social para transformar ideias em ações reais.
Com o uso do Firebase (Cloud Firestore e Authentication) e da stack React + Next.js + TypeScript + TailwindCSS, a plataforma oferece desempenho, segurança e escalabilidade.
🌎 O projeto está pronto para gerar impacto positivo em nível local e global — fortalecendo comunidades e promovendo cidades mais resilientes, inteligentes e sustentáveis.
💚 Juntos, podemos transformar ideias em ação!