If you have worked in the past with Ruby on Rails, you’ll notice quickly that Decidim is not your typical Ruby on Rails Vanilla App.
We’ve tried using Consul but we found some problems on reutilization, adaptation, modularization and configuration. You can read more about that on Propuesta de Cambios de Arquitectura de Consul (in spanish only). As a summary, we decided to try with a model based in RoR Engines. A good resource regarding this approach is Component Based Rails Applications.
This means that:
Decidim is a gem, available in rubygems.org. You can install it with the command
gem install decidim
Decidim is a command line generator of Ruby on Rails applications. After you’ve install it you can generate a new RoR app with
This app has a dependency the gem itself. You can see this in the Gemfile of the generated app.
Here are some good examples of what can be done with Decidim:
See the website at https://omastadi.hel.fi/
See the source code at https://github.com/City-of-Helsinki/decidim-helsinki/
They have their Gemfile with lots of modules with their own code. Some of them are also in ruybgems (like
decidim-term_customizer), others are only in Github (
decidim-redirects). They even use a module made by other organization in the community (
They have an awesome READE explaining how it works and what changes have made.
See the website at https://decidim.barcelona
See the source code at https://github.com/AjuntamentdeBarcelona/decidim-barcelona
See the website at https://participate.indices-culture.eu/
See the source code at https://github.com/Platoniq/decidim-indices
In the Gemfile, they use modules on their git repositories:
They have their UI customized to their needs.