Cette page est affichée en anglais. Une traduction française est en cours.
ConfigsApr 3, 2026·2 min de lecture

Novu — Open-Source Notification Infrastructure

Unified API for in-app, email, SMS, push, and chat notifications. React components included. 38K+ GitHub stars.

Introduction

Novu is the leading open-source notification infrastructure with 38,800+ GitHub stars. It provides a unified API to send notifications across every channel — in-app inbox, email, SMS, push, and chat (Slack, Discord, Teams) — with a single trigger call. For AI applications, Novu powers task completion alerts, agent status updates, pipeline monitoring notifications, and user engagement messages. It includes React components for an embeddable notification inbox, visual workflow builders, subscriber preference management, and multi-tenant support.

Works with: React, Vue, Angular, Node.js, Python, any REST client, SendGrid, AWS SES, Twilio, Slack, Discord. Best for teams building AI applications that need multi-channel notifications. Setup time: under 5 minutes.


Novu Features

Multi-Channel Delivery

One trigger call -> Multiple channels:

  novu.trigger('alert') → ┌─ In-App Inbox
                          ├─ Email (SendGrid/SES)
                          ├─ SMS (Twilio)
                          ├─ Push (FCM/APNs)
                          └─ Chat (Slack/Discord)

Visual Workflow Builder

Define notification logic with code or the visual editor:

import { workflow } from '@novu/framework';

const aiAlert = workflow('ai-task-alert', async ({ step, payload }) => {
    // Step 1: Always send in-app
    await step.inApp('inbox', async () => ({
        body: `Task "${payload.taskName}" ${payload.status}`,
    }));

    // Step 2: Wait, then send email if unread
    await step.delay('wait', () => ({ amount: 5, unit: 'minutes' }));

    await step.email('email-fallback', async () => ({
        subject: `AI Task: ${payload.taskName}`,
        body: `Your task completed in ${payload.duration}.`,
    }));
});

Embeddable Inbox (React)

import { Inbox } from '@novu/react';

function NotificationCenter() {
    return (
        <Inbox
            applicationIdentifier="app-id"
            subscriberId="user-123"
            appearance={{ colorPrimary: '#E8654A' }}
        />
    );
}
// Renders a full notification inbox with read/unread, actions, and preferences

AI App Notification Patterns

Pattern Trigger
Task complete Agent finished a coding task
Pipeline alert RAG pipeline failed or degraded
Cost threshold LLM spend exceeded daily budget
Quality alert Hallucination rate above threshold
User engagement Weekly AI usage summary

Subscriber Preferences

Let users control their notification channels:

// Users can toggle: email ✅, SMS ❌, in-app ✅, Slack ✅
await novu.subscribers.setPreferences('user-123', {
    channels: { email: true, sms: false, in_app: true, chat: true }
});

FAQ

Q: What is Novu? A: Novu is open-source notification infrastructure with 38,800+ GitHub stars providing a unified API for in-app, email, SMS, push, and chat notifications with visual workflows and React inbox components.

Q: Why use Novu for AI apps? A: AI applications need notifications for task completion, pipeline alerts, cost thresholds, and user engagement. Novu handles all channels with one API call, includes subscriber preferences, and provides an embeddable React inbox.

Q: Is Novu free? A: Yes, open-source under MIT. Self-host for free. Novu Cloud has a free tier (30K events/month).


🙏

Source et remerciements

Created by Novu. Licensed under MIT.

novu — ⭐ 38,800+

Discussion

Connectez-vous pour rejoindre la discussion.
Aucun commentaire pour l'instant. Soyez le premier à partager votre avis.

Actifs similaires