Sobre o projeto
O Open Civic Signal OS é uma plataforma de tecnologia cívica entregue como um monorepo. Seu propósito declarado é converter sinais da comunidade — problemas locais recorrentes relatados por residentes — em um backlog público que as pessoas possam compreender, confiar e agir.
A promessa do produto é descrita sob dois ângulos. Para o cidadão, o caminho é: relatar um problema local real em linguagem simples, entender por que ele foi priorizado e acompanhar o que mudou, quem respondeu e o que ainda está pendente. Para servidores públicos e líderes comunitários, o objetivo declarado é reduzir o ruído, destacar o que é mais importante e manter visíveis as evidências por trás da priorização.
As jornadas de usuário documentadas abrangem três papéis:
- Membro da comunidade: relatar um problema, apoiar um problema existente em vez de duplicá-lo, entender por que um problema tem alta prioridade e acompanhar atualizações da comunidade ou de uma instituição.
- Moderador ou coordenador comunitário: revisar conversas da comunidade, publicar atualizações de progresso com limites de função claros e manter os canais de discussão utilizáveis e auditáveis.
- Servidor público: identificar rapidamente os problemas de maior prioridade, publicar atualizações de progresso e usar evidências transparentes para justificar a ordenação das ações.
O README é sincero sobre uma lacuna atual de UX: o repositório e a aplicação explicam bem a plataforma técnica, mas expõem muitas opções de navegação e fluxo de trabalho precocemente para usuários iniciantes. Portanto, o trabalho contínuo de frontend está focado em simplificar a experiência de primeira execução, esclarecer as ações primárias e reduzir a carga cognitiva. A direção declarada do produto inclui uma hierarquia de tela inicial mais simples, chamadas para ação primárias mais claras, onboarding e verificação com menos fricção, navegação acessível por teclado e dispositivos móveis, e superfícies de confiança que explicam a classificação e o progresso sem jargões.
Stack técnica conforme documentada:
- Backend: Java 21 com Spring Boot, em apps/api-java, hospedando a API e os serviços de priorização.
- Frontend: React, TypeScript e Vite, em apps/web-react, fornecendo o painel público e um console de operador.
- Dados: JSON-first para o MVP atual, com PostgreSQL listado como planejado.
- Contratos: definições OpenAPI e esquemas compartilhados em packages/contracts.
- Outros diretórios: infra para ambiente local e ativos de implantação, e docs para estratégia, ideias, arquitetura e planos de execução.
Executando o projeto: o runtime de desenvolvimento integrado canônico é o Docker, iniciado com npm run docker:dev:up, que o README descreve como o caminho de hot-reload necessário para frontend e backend juntos. Comandos de suporte incluem docker:dev:doctor, docker:dev:ps, docker:dev:logs e docker:dev:down, além de um modo similar ao de produção (docker:prod:up) e imagens GHCR pré-construídas (docker:ghcr:up / docker:ghcr:down) com um fluxo de imagem de CI em .github/workflows/docker-images.yml. O README solicita explicitamente que a indisponibilidade do Docker seja tratada como um bloqueador do ambiente local, em vez de ser contornada, ao validar o comportamento integrado. Para o MVP atual, existem também scripts como npm install e npm run prioritize. Caminhos de fallback apenas para componentes existem para trabalho isolado: executar o app React com npm run dev dentro de apps/web-react, e a API Java com ./mvnw spring-boot:run dentro de apps/api-java.
Materiais adicionais do repositório incluem recursos de lançamento (GIFs de demonstração e arquitetura, um SVG de arquitetura, uma landing page em docs, um documento de ideias e um playbook de agente), um kit de marca e ativos visuais (logotipo, wordmark, banner, card social e logo em PNG) e rastreamento de roadmap via issues do GitHub do projeto.
No geral, o repositório é uma plataforma de engajamento cívico e priorização em estágio inicial e documentada abertamente: define as jornadas pretendidas para cidadãos e administradores, fornece um fluxo de desenvolvimento monorepo baseado em Docker com componentes Spring Boot e React, mantém contratos de API no repositório e lista abertamente seu trabalho restante de simplificação de UX.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.