Awesome Open Source
Awesome Open Source


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

Build Status Coverage Status

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.0"}

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.


This project uses Elixir's mix format for formatting. Add a hook 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-2021 Codedge LLC (

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

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Android (40,977
Ios (19,249
Elixir (18,711
Amazon (1,075
Hex (512
Fcm (236
Apns (198
Related Projects