Notifo

Notifo

Multi-channel notification platform for apps and customers

845stars
82forks
Last commit: 2mo ago
Repo age: 6y old
Notifo screenshot

Notifo is an open-source, multi-channel notification service for applications, e-commerce and publishing scenarios. It provides a REST API and a management UI to create templates, manage users and subscriptions, and deliver notifications across channels.

Key Features

  • Rich REST API with OpenAPI-style documentation for creating events, users and subscriptions
  • Management UI for notification templates, users, projects, subscriptions and settings
  • Email template support with MJML and Liquid-style templating
  • Channel abstraction with adapters for Email (Amazon SES), Web (SignalR / sockets), Web Push, Mobile Push (Firebase) and SMS (MessageBird)
  • Reliable delivery with retry mechanisms, queues and schedulers for undelivered or unconfirmed notifications
  • Topic-based subscription model (hierarchical topic paths) and per-topic user preferences
  • Tracking of read/confirmed notifications and delivery reporting
  • Web plugin / overlay to embed notifications into client applications

Use Cases

  • Customer alerts and marketing notifications for e-commerce (price drops, order updates)
  • Real-time notifications for collaboration and task management systems (project/task events)
  • Publishing and news delivery where users subscribe to topics or categories for updates

Limitations and Considerations

  • Project is marked beta: some channels/features (notably mobile push and email integrations) have limited production usage
  • Currently relies on MongoDB as primary datastore; multi-database support is planned but not complete
  • Provider ecosystem is limited out of the box (specific providers implemented; adding new email/SMS providers requires development)
  • Tests and automated API/UI test coverage are limited and further hardening of queues/schedulers is recommended

Notifo is suitable for teams wanting a self-hostable notification platform with topic-based subscriptions and multi-channel delivery. It combines an ASP.NET Core backend and a React/TypeScript frontend and is intended for integration into web and mobile applications.

Categories:

Tags:

Tech Stack:

Share:

Similar Services

Vector

Vector

High-performance observability data pipeline written in Rust

21.1k
2k
Last commit: 22h ago

Open-source observability pipeline to collect, transform, and route logs and metrics with a single, high-performance binary and programmable transforms.

Alternative to:
Elastic Logstash
Elastic Logstash
+13
EMQX

EMQX

Scalable MQTT broker and real-time messaging platform for IoT

15.8k
2.4k
Last commit: 2d ago

EMQX is a high-performance MQTT broker and IoT messaging platform with clustering, security controls, a SQL rules engine, and integrations to databases and event systems.

Alternative to:
EMQX Cloud
EMQX Cloud
+3
Apprise

Apprise

Unified notifications library for 120+ services via a single API.

15.5k
554
Last commit: 4d ago

A Python-based notification library and CLI that routes messages to 120+ services via URL-based configurations, enabling self-hosted cross-platform alerts.

Alternative to:
Twilio
Twilio
+4
Eclipse Mosquitto

Eclipse Mosquitto

Lightweight MQTT message broker

10.5k
2.6k
Last commit: 2d ago

Eclipse Mosquitto is a lightweight, open-source MQTT broker supporting MQTT 5.0 and 3.1.1, plus client libraries and CLI tools for pub/sub messaging.

Alternative to:
EMQX Cloud
EMQX Cloud
+11
Centrifugo

Centrifugo

Scalable open-source real-time messaging server for pub/sub

9.7k
674
Last commit: 16d ago

Open-source, Go-based real-time messaging server for pub/sub and live updates; supports WebSocket, SSE, gRPC and brokers (Redis, NATS) with official SDKs.

Alternative to:
Centrifugo Cloud
Centrifugo Cloud
+4
ejabberd

ejabberd

Scalable real-time messaging server for XMPP, MQTT, and SIP

6.5k
1.5k
Last commit: 1d ago

ejabberd is an Erlang/OTP-based messaging server providing XMPP chat and presence, MQTT broker capabilities for IoT, and SIP services for real-time communications.

Alternative to:
CloudMQTT
CloudMQTT
+11