Novu — Open-Source Notification Infrastructure
Unified API for in-app, email, SMS, push, and chat notifications. React components included. 38K+ GitHub stars.
Ready-to-run agent install
This asset can be installed after the agent chooses its runtime, checks the plan, and runs the matching command.
npx -y tokrepo@latest install ecdca64c-b2d0-4a6c-8ec4-eeb1b589bf20 --target codexRun after dry-run confirms the install plan.
What it is
Novu is an open-source notification infrastructure platform that provides a unified API for sending notifications across email, SMS, push, in-app, and chat channels. It includes a visual workflow editor for designing notification flows, subscriber management, and a pre-built notification center component you can embed in your app.
It targets developers building applications that need multi-channel notifications without managing separate integrations for each channel.
How it saves time or tokens
Novu replaces the patchwork of email services, SMS gateways, and push notification providers with a single API. Instead of writing separate integration code for SendGrid, Twilio, Firebase, and Slack, you define notification workflows once and Novu routes them to the right channel. For AI applications, this means you can notify users about model completions, alerts, or reports through their preferred channel without building channel-specific logic.
How to use
- Self-host with Docker or use the cloud:
git clone https://github.com/novuhq/novu.git
cd novu
docker compose up
- Install the SDK and trigger a notification:
import { Novu } from '@novu/node';
const novu = new Novu('your-api-key');
await novu.trigger('ai-model-complete', {
to: { subscriberId: 'user-123' },
payload: {
modelName: 'gpt-4o',
status: 'completed',
resultUrl: 'https://app.example.com/results/456'
}
});
- Design notification workflows in the visual editor at your Novu dashboard.
Example
import { Novu } from '@novu/node';
const novu = new Novu('your-api-key');
// Notify user when AI processing is complete
async function notifyModelComplete(userId: string, result: object) {
await novu.trigger('model-result', {
to: { subscriberId: userId },
payload: {
title: 'Your AI analysis is ready',
summary: result.summary,
link: `https://app.example.com/results/${result.id}`,
processingTime: result.duration
}
});
}
// The workflow in Novu can route this to:
// - In-app notification (always)
// - Email (if user has email preference)
// - Slack (if workspace is connected)
Related on TokRepo
- AI tools for automation -- Automation and workflow tools
- AI tools for self-hosted -- Self-hostable infrastructure
Common pitfalls
- Self-hosting Novu requires MongoDB, Redis, and several microservices. Ensure your server has at least 4GB RAM. For small projects, the cloud version may be simpler.
- Each notification channel requires its own provider credentials (SendGrid API key, Twilio SID, etc.). Set up providers before designing workflows.
- Notification templates use Handlebars syntax. Complex conditional logic in templates can become hard to maintain. Keep templates simple and move logic to your application code.
Frequently Asked Questions
Novu supports email, SMS, push notifications (mobile and web), in-app notifications, and chat platforms (Slack, Discord, Microsoft Teams). Each channel can have multiple providers configured -- for example, you can use SendGrid for transactional emails and Amazon SES for bulk emails.
Yes. Novu is open-source and designed for self-hosting. The Docker Compose setup includes all required services (API, worker, web dashboard, MongoDB, Redis). Self-hosting gives you full control over notification data and infrastructure.
Yes. Novu provides a pre-built, embeddable notification center component for React, Vue, Angular, and vanilla JavaScript. It includes a bell icon, notification list, read/unread states, and real-time updates. You can customize its appearance with CSS.
Novu includes a preference management system where subscribers can choose which channels they want to receive notifications on. You can set default preferences per workflow, and subscribers can override them. This reduces notification fatigue and improves user experience.
The open-source version is free for self-hosting with no limits on notifications or subscribers. The cloud version has a free tier with limited events per month and paid tiers for higher volumes. Check the Novu website for current pricing details.
Citations (3)
- Novu GitHub Repository— Novu is an open-source notification infrastructure platform
- Novu Documentation— Novu provides unified API for email, SMS, push, in-app, and chat notifications
- Novu Blog— Multi-channel notification systems improve user engagement
Related on TokRepo
Source & Thanks
Discussion
Related Assets
Twenty — Open-Source AI CRM (Salesforce Alternative)
Modern open-source CRM with AI features. Custom objects, kanban views, email sync, workflow automation. NestJS + React + PostgreSQL. AGPL-3.0, 43,700+ stars.
Reactive Resume — AI-Powered Open-Source Resume Builder
Free open-source resume builder with AI integration. Supports Claude, GPT, Gemini for content generation. Drag-and-drop, PDF export, self-hostable, privacy-first. MIT, 36,000+ stars.
Plane — Open-Source AI Project Management
Open-source Jira/Linear alternative with AI-powered pages. Issues, sprints, modules, roadmaps, and real-time analytics. Self-hostable via Docker. AGPL-3.0, 47,500+ stars.
Huly — All-in-One Open Source Project Management Platform
Huly is an open-source alternative to Linear, Jira, Slack, and Notion. Project tracking, team chat, knowledge base, and HR tools in a single unified platform.