Skip to main content

Cookie settings

We use cookies to ensure the basic functionalities of the website and to enhance your online experience. You can choose for each category to opt-in/out whenever you want.



Analytics and statistics


This proposal has been implemented

  • Reviewed by @product and accepted in the main project
  • It is funded by Barcelona City Council
  • Developed by Populate
  • Available in release 0.27 via #8738

Server setup for Push Notifications

Avatar: InnovacióDemocràtica

Ref. PWA13.1

NOTE: this feature is from a big development. See PWA discussion at GitHub.

Is your feature request related to a problem? Please describe.

As a Decidim implementer and sysadmin, I want to know how to configure my server so the app can send push notifications.

Describe the solution you’d like

I want instructions on how to set this up.

At a minimum I’ll need:

  • A rake task for generating the VAPID keys (rails decidim:generate)
  • Some ENV vars for setting the VAPID_PRIVATE_KEY and VAPID_PUBLIC_KEY
  • A doc in Services -> Push notifications explaining how to set this up and these keys in Configure -> Env vars

Describe alternatives you’ve considered

To not have these VAPID keys setup but AFAIK this is necessary for sending push notifications.

Additional context

See Step 1: Client Side in Google’s guide:

Before subscribing to a user you’ll need to generate a set of “application server keys”, which we’ll cover later on.

The application server keys, also known as VAPID keys, are unique to your server. They allow a push service to know which application server subscribed to a user and ensure that it’s the same server triggering the push messages to that user.

Does this issue could impact on users private data?
It could have some personal data in some notifications (for instance, in the case of Messaging)

Acceptance criteria

  • As a Decidim implementer, I have documentation on how to configure push notifications in the server-side
  • Given that I’m a Decidim implementer,
    When I run rails decidim:generate
    Then I have the following output:

VAPID keys correctly generated.

  • Given that I’m a Decidim implementer,
    When I configure the VAPID_PRIVATE_KEY and VAPID_PUBLIC_KEY env vars
    Then the push notifications service is set up


Please log in

The password is too short.