Saltar al contenido principal

Configuración de cookies

Utilizamos cookies para asegurar las funcionalidades básicas del sitio web y para mejorar tu experiencia en línea. Puedes configurar y aceptar el uso de las cookies, y modificar tus opciones de consentimiento en cualquier momento.

Esenciales

Preferencias

Analíticas y estadísticas

Marketing

Create (and document) interfaces and signal events across internal operations

Is your feature request related to a problem? Please describe.
This comes from the common need from many organizations when it comes to customize Decidim for their needs. Some would like to introduce new type of questions in a form, other would like to receive an email when a survey is answered, to create an authorization after a successful oauth login/register. Or, in general, operations before/after certain actions. Certain developments already take this into account, for instance, it is possible to create custom content blocks in your application. Or a custom type of census in a election.

This would require a guide for defining specs in order to introduce new functionalities, to try to identify all the parts of a workflow that would be useful for clients to intruce custom behaviours and create programatic APIs in order to do so.

Currently there's a mechanism broadly used in Decidim to create this, calle "manifests", that you could register. Other useful mechanism are the integrated signal events in Rails (ActiveSupport::Notifications), events should be thrown much more frequently in many parts of the different flows.

Describe the solution you'd like
I'd like to propose a guide for defining specs for new functionalities and, also, a guide for code reviewers for thinks to take into account when reviewing new PRs from external contributors.

Also to start creating a technical documentation that explains the internal Decidim code, defining some classes and methods as "public" in the sense of a classic SDK. With examples if possible.

Describe alternatives you've considered
Do nothing, read the existing code, good luck.

Additional context

N/A

Does this issue could impact on users private data?

Yes and no, that would give power to final implementations of each Decidim instance as well as will facilitate the creation of plugins with less maintenance worload (as the SDK should maintain a much stable implementation between version).

Comentario

Código QR

Logo oficial de Metadecidim

Create (and document) interfaces and signal events across internal operations

Código QR

Confirmar

Por favor, inicia la sesión

La contraseña es demasiado corta.