Decidim
Blog

New version 0.31.0

Release Highlights

The major highlight of this version is a technical one: the upgrade to Rails 7.2. But as always, over the six months between releases we’ve had time to add plenty of improvements, including two new components that revisit and refine previous experiments: the new Elections component and the Collaborative Texts component.

Elections

After exploring different hypotheses around potential voting mechanisms (with and without cryptographic guarantees), we have finally implemented a component based on the concrete needs of organizations requiring these kinds of processes. This component makes it possible to run elections with multiple configuration options, without the complexity introduced by a cryptographic layer.

For elections that do require additional guarantees, there is a community module integrating the Vocdoni protocol. In the future, our goal is to converge toward a single module that can optionally enable the Vocdoni security layer.

  • Init elections module #14560
  • Add election model and admin interface #14605
  • Add question and answer models and admin interface for elections #14696
  • Add Census to Elections component #14783
  • Add an election dashboard #14859
  • Voting booth in an Election #14915
  • Search and display component elections #15025

👉 Try out the feature here: https://try.decidim.org/processes/hereslug/f/57/elections/5 

Collaborative texts

This is the first iteration of a new component designed to replace the old Participatory Texts, which is currently tied to the Proposals component and comes with several usability issues. Instead of extracting the existing functionality into a new module, we chose to rebuild it from scratch, informed by years of accumulated experience and diverse use cases.

The plan is to add a couple more iterations to cover all required functionalities and then deprecate the old Participatory Texts, helping to simplify and lighten the Proposals component.

  • Initialize collaborative texts module #13978
  • Add admin UI for "Collaborative Texts" component #14013
  • Add body and versioning to collaborative texts documents #14084
  • Add frontend interaction to collaborative texts #14137

👉 Try out the feature here: https://try.decidim.org/processes/sup2035/f/59/documents/2 

Improvements to Existing Features

API

This release brings substantial updates to the API, strengthening both functionality and reliability. We introduced configurable API authentication to enforce secure access and expanded the Write API with new capabilities, including action logging and support for answering proposals. The GraphQL API has been updated and refined, with several resource fields revised for greater consistency. We’ve also standardized timestamp formats to ensure better interoperability across systems. Finally, we added documentation and examples for integrating Decidim with Grafana, making it easier to monitor and visualize platform activity.

  • Update of the API GraphQL #13986
  • Force api authentication with configuration #14238
  • Change timestamps to a new format in the API #14640
  • Add Grafana integration documentation and examples #14659
  • Add API authentication possibility #14225
  • Update API fields for component resources #14644
  • Update API fields for space resources #14648
  • Write API: log actions for the API users #14960
  • Write API: add answer proposals #14881

Admin panel

We continue to make improvements to the administration panel. This time, we focused on reorganizing the collections of action icons, which in some cases had become unsustainable, and implemented a dropdown menu to ensure better scalability. As always, this is just the first iteration! In the next release, we plan to refine this solution so that each table keeps a couple of the most frequently used actions visible. We also continued streamlining forms and bringing order to the interface by moving configuration options into the content blocks where they belong.

  • Delete inactive user accounts #13882
  • Implement dropdown menu for actions in spaces index pages #14805
  • Implement dropdown menu for components (part 1) #14872
  • Implement dropdown menu for verifications and templates modules #14914
  • Implement dropdown menu for admin module (part 1) #14897
  • Implement dropdown menu for admin module (part 2) #14916
  • Implement dropdown menu for other actions in spaces #14863
  • Implement dropdown menu for taxonomies #14920
  • Remove Appearance page #14797
  • Manage uploaded census records in the admin panel #13850

Budgets

  • Implement share and download buttons in budget successful vote screen #14283
  • Implement focus mode in the budget projects component #14512

Initiatives

  • Enhance initiative creation wizard #13952
  • Improve the digital signature process for initiatives #13729

Meetings

  • Allow meeting addresses to be unset/TBD #14389
  • Manage meetings registations with QR codes #14298
  • Customizing meeting reminders #14470
  • Waiting list for the meeting #14492

UI fixes and other Improvements

  • Improve merge proposals functionality #13732
  • Improve accountability results visualization #14067
  • Standardize statistics #14360
  • Add taxonomies and attachments to posts #14085
  • Add QR code for share modal #14086
  • Split the survey admin interface in tabs #14182
  • Change secondary buttons to transparent in admin panel #14249
  • Change the 'choose template' page for questionnaires to a two column design #14274
  • Align global Search page with other search pages #14133
  • Add proposal autocomplete in editor #14184
  • Move CTA button configuration to Hero content block #14741
  • Shows the debate status (ongoing/not started/closed) when listing #14739
  • Add possibility to automatically hide reported spam content #14870
  • Add demographics collection module #14486
  • Add Democratic participation indicator content block #14418
  • Implement publish & unpublish actions in spaces #15008

In addition to this, this release incorporates as always lots and lots of fixes and improvements for developers.

Check out the whole changelog: https://github.com/decidim/decidim/releases/tag/v0.31.0