1O que é o Decidim
Tudo parte de uma peça que a equipe não escreveu.
O Decidim é um framework livre de democracia participativa em Ruby on Rails, usado por governos como Barcelona e a Comissão Europeia. A ideia central é simples — uma prefeitura ou ministério quer abrir parte da gestão para participação popular (orçamento, consultas, propostas), e o Decidim entrega a estrutura pronta: organizações, espaços participativos (processos, assembleias, conferências) e componentes plugáveis dentro deles (propostas, reuniões, orçamentos, surveys…).
O detalhe que explica quase tudo que vem depois: o Decidim é modular. Cada decidim-*
é uma gem independente, e customizar o framework normalmente significa estender essas gems por fora —
não reescrevê-las.
decidim.org — o projeto oficial
Site institucional do Decidim: o que é, quem usa, documentação oficial.
decidim.org2O Participa: o Decidim virando produto de governo
O relatório de arquitetura é a leitura de entrada se você quer entender o app, não o framework:
como o repositório é, na prática, um wrapper Rails fino sobre o Decidim, com uma engine própria
(decidim-govbr) carregando a identidade visual e o login gov.br, um esquema
multi-tenant ("um Decidim, um banco, muitos órgãos" — um schema PostgreSQL por organização) e um
roteiro histórico em camadas: fundação multi-tenant → identidade GovBR → expansão de módulos.
Participa: como o sistema é concebido e o que ele entrega
Arquitetura do app, multi-tenant, identidade GovBR, top 10 funcionalidades e roadmap por ciclos.
pages.dev.caicara.dev/participa-como-o-sistema-e-concebido-e-o-que-ele-entrega2.1 Participação multicanal
Um fio secundário desse mesmo produto: participação por outros canais além da web — WhatsApp e Telegram viram interações estruturadas que sincronizam com o Decidim.
Como a participação multicanal se conecta ao Brasil Participativo
WhatsApp/Telegram/Web viram participação estruturada e sincronizam com o Decidim — página ainda inicial.
pages.dev.caicara.dev/como-a-participacao-multicanal-se-conecta-ao-brasil-participativo3Como isso chega aos municípios
O software é uma condição necessária, não suficiente. Falta o desenho institucional que faz um município de porte médio efetivamente rodar um processo participativo — e é isso que o guia de implantação resolve.
Brasil Participativo · Modelo de uso e execução nos municípios
Dois pilares institucionais, o micro-ciclo de cinco fases, o calendário atrelado ao PPA/LDO/LOA, o modelo jurídico-financeiro escolhido e o roteiro de implantação em 180 dias.
pages.dev.caicara.dev/brasil-participativo-modelo-de-uso-e-execucao-nos-municipios3.1 Dois pilares que se encaixam
Audiência pública e consulta pública não competem — se sequenciam. Cada pilar institucional brasileiro tem um tradutor direto na plataforma: a audiência pública (oral, síncrona, convocada) vira o componente Encontros; a consulta pública (escrita, assíncrona, com prazo) vira um Processo com Textos participativos.
O espaço "Consultas" dentro do Decidim é um mecanismo de votação/referendo com urna eletrônica — não é a consulta pública brasileira. O equivalente funcional é um Processo com componentes escritos (Textos participativos, Comentários, Emendas).
3.2 O micro-ciclo e o calendário do orçamento
Toda receita de processo é uma variação de cinco fases — convocar → habilitar → deliberar → responder → prestar contas — desenhadas para que a participação produza consequência, que é onde a maioria das iniciativas falha. Regra de ouro: um processo que não chega a "responder" e "prestar contas" é, para o cidadão, indistinguível de nenhum processo. No plano anual, esse ciclo se amarra ao calendário orçamentário (PPA, LDO, LOA) — o único ponto em que a participação incide sobre decisão vinculante de recursos.
3.3 O Termo de Adesão e o roteiro de 180 dias
De seis caminhos jurídico-financeiros mapeados, um venceu com a maior pontuação: o Termo de Adesão intergovernamental (modelo Rede GOV.BR / Transferegov), rodando sobre infraestrutura de bem público federal com cofinanciamento estadual opcional. A União entrega plataforma, hospedagem e capacitação; o município assume ponto focal, comitê gestor, calendário publicado e resposta fundamentada a 100% das contribuições.
A capacitação (Níveis 1–3) ainda não existe e precisa estar pronta antes do primeiro município-piloto — os 180 dias de cada cidade começam atrasados se a trilha não estiver no ar antes da semana 9, e o atraso se acumula a cada nova cidade que entra na rede.
4O ecossistema de gems: estender sem fork
O Participa não implementa suas regras de negócio brasileiras dentro do próprio app — ele as isola em
onze repositórios próprios, publicados via git (ainda não no RubyGems), cada um travado numa
revisão fixa no Gemfile.lock. A tese central: estender em tempo de boot vale mais que
forkar — nove dos onze módulos inserem código na frente das classes do core sem copiá-las, o que faz
o ecossistema sobreviver a upgrades do Decidim com pouco atrito. O único fork do conjunto
(decidim-bp_templates) é, previsivelmente, o mais caro de manter — e é ele que hoje trava um
diretório inteiro de features desativadas (.disabled-for-0.32/).
O ecossistema de gems criado pelo Brasil Participativo
Os onze repositórios, a natureza de cada um (customização, módulo novo, integração ou fork) e como plugam no Participa.
sg-pages.dev.caicara.dev/o-ecossistema-de-gems-criado-pelo-brasil-participativoVale ler esta página antes das duas seguintes: ela dá o vocabulário (prepend,
to_prepare, Deface, "engine") que os módulos individuais pressupõem.
5As duas peças mais tocadas: forms e surveys
Dentro desse pacote de gems, duas ficam no coração do produto de consulta pública, e por isso ganharam explicações dedicadas:
Como funcionam os Surveys no Decidim
Um survey quase não tem dados próprios — é uma casca sobre um questionário genérico. Ciclo de vida, anonimato e publicação por pergunta.
pages.dev.caicara.dev/como-funcionam-os-surveys-no-decidimComo funciona o decidim-forms
A biblioteca sem rotas próprias que sustenta surveys, inscrições em reuniões e mais — perguntas, condições e exportações.
pages.dev.caicara.dev/como-funciona-o-decidim-formsÉ justamente o módulo decidim-module-questionnaires — a customização do BP sobre esse
decidim-forms — o mais ativo dos onze repositórios do ecossistema (71 commits), o que ajuda
a explicar por que forms & surveys concentram tanta atenção mais adiante neste mapa.
6O que o Decidim 0.33 exige da gente
Como o Participa se acopla ao Decidim "por dentro" (via prepend em classes internas, não
por uma API pública estável), cada nova versão do framework é um risco a calcular, não só uma
atualização de versão. A metodologia é clara — três caminhos pelos quais uma mudança upstream pode nos
atingir: o upstream avisa, o upstream mexeu num arquivo que enganchamos, ou o
upstream mudou um contrato que assumimos sem tocar o arquivo.
O que o Decidim 0.33 muda e onde isso encosta no Participa
396 commits e 2445 arquivos de diff cruzados com nossos ganchos internos — matriz de severidade × confiança e plano de ação.
sg-pages.dev.caicara.dev/o-que-o-decidim-0-33-muda-e-onde-isso-encosta-no-participaParticipantes de login efêmero e login gov.br podem ficar ocultos por padrão nas listagens públicas —
mudança de produto, não só de código. E, previsivelmente, o fork community_templates
volta a aparecer como o elo mais frágil do upgrade.
7Quando a manutenção vira dor: triagem e RubyGems
Este é o ponto em que os fios se cruzam — e agora dá para contar com números reais.
7.1 A triagem: o mesmo bug em três planos
Um defeito em forms/surveys pode viver em três lugares ao mesmo tempo — a comunidade relata no
Metadecidim, o upstream discute em issue/PR no GitHub, e o fork de produção
(decidimbr/decidim, base 0.32.1) corrige antes de qualquer um dos dois responder.
Triagem da comunidade — Decidim forms & surveys, núcleo
Cruza Metadecidim × GitHub upstream × spec interna do fork. Tabela de leitura cruzada e recomendações.
pages.dev.caicara.dev/mdc-rel-2026-09-02-triagem-da-comunidade-decidim-forms-and-surveys-nucleoO achado mais incômodo confirma a proposta já publicada no Metadecidim: a exportação de surveys muito grandes (issue upstream #15443, ~250 mil respostas estourando memória) segue sem PR aberto no upstream, e o próprio fork já registrou isso como follow-up fora do escopo atual.
QA triage of forms & surveys: fixes from a production fork
A proposta publicada na comunidade oficial do Decidim, resumindo o achado acima.
meta.decidim.org/en/processes/bug-report/f/210/proposals/188147.2 O PRD: profissionalizar a distribuição
Esse mesmo fork — que já modifica decidim-forms, decidim-surveys e adiciona
decidim-govbr, mais uma dúzia de módulos de terceiros vendored — hoje só chega a
aplicações downstream via path:/git: no Gemfile, sem versionamento semântico e
fácil de confundir com as gems oficiais do Decidim.
Publicação de gems bp-* no RubyGems
Namespace bp-*, meta-gem bp-decidim, versionamento sincronizado ao upstream, monorepo vs. polyrepo, DAG de publicação.
pages.dev.caicara.dev/prd-publicacao-de-gems-bp-no-ruby-gemsSem tocar em namespace Ruby nem em diretórios físicos, para preservar a capacidade de rebase contra o
upstream. E o detalhe que mais amarra com a seção 7.1 — pré-requisito duro: não publicar antes de
aplicar as simplificações planejadas do decidim-surveys e sem os specs de forms/surveys
passando em baseline.
8Como usar este mapa
| Seções | Para quem |
|---|---|
| 1 → 2 → 3 | Contexto suficiente para entender o produto e como ele chega ao cidadão de um município real — sem tocar em código. |
| 4 · 5 · 6 | Para quem vai mexer em código, revisar as gems ou planejar o upgrade para o Decidim 0.33. |
| 7 | O "porquê agora": é dali que nasce a urgência de arrumar a casa das gems. |