Awesome Open Source
Awesome Open Source


HTTP2-compliant wrapper for sending iOS and Android push notifications.


Pigeon v2.0 is in release candidate status. See the latest stable 1.6 on Hex or the 1.6 branch on GitHub for installation.


Add :pigeon and as a mix.exs dependency:

def deps do
    {:pigeon, "~> 2.0.0-rc.1"}

Getting Started

Check the module documentation for your push notification service.

Creating Dynamic Runtime Dispatchers

Pigeon can spin up dynamic dispatchers for a variety of advanced use-cases, such as supporting dozens of dispatcher configurations or custom connection pools.

See Pigeon.Dispatcher for instructions.

Writing a Custom Dispatcher Adapter

Want to write a Pigeon adapter for an unsupported push notification service?

See Pigeon.Adapter for instructions.



Unit tests can be run with mix test or mix coveralls.html. Environment variables will need to be set for various credentials. See config/test.exs for the full list.


This project uses Elixir's mix format and Prettier for formatting. Add hooks in your editor of choice to run it after a save. Be sure it respects this project's .formatter.exs.


Git commit subjects use the Karma style.


Copyright (c) 2015-2022 Codedge LLC (

This library is MIT licensed. See the LICENSE for details.

Related Awesome Lists
Top Programming Languages
Top Projects

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Elixir (16,808
Amazon (11,083
Hex (4,508
Fcm (760
Apns (653
Adm (19