Novu logoNovu

Changelog

Product updates, improvements, and fixes

Follow us on X

All changelog posts

  • Notification Severity

    Notification Severity lets you classify workflows as High, Medium, Low, or None importance. High/medium notifications get color-coded visual cues (red/orange), the bell icon changes color based on highest unread severity, and you can filter notifications by priority level in tabs. Available through dashboard settings, API, and template variables.

    Author:Paweł Tymczuk
    Paweł Tymczuk
    Cover

    Note: Requires <Inbox /> version 3.9.1 or higher


    Prioritize user attention with notification classification that helps users quickly identify and respond to critical messages. Set severity levels for any workflow to ensure urgent communications get the immediate attention they deserve.

    Visual Priority Indicators

    Notifications now display with color-coded visual cues based on their importance level. High-severity notifications appear with a red accent, medium-severity with orange, and low-severity messages remain neutral.

    Your users can instantly spot critical alerts in their notification feed without reading every message.

    Smart Bell Icon Status

    The notification bell automatically adapts its color to reflect the highest priority unread message.

    When users have critical notifications waiting, the bell glows red to signal immediate attention is needed, even before they open their inbox.

    Flexible Severity Filtering

    Create dedicated tabs in your inbox that filter notifications by severity level. Build a "Critical Alerts" tab for high-priority messages or a "Security" section for account-related warnings. Users can focus on what matters most while keeping less urgent notifications organized and accessible.

    Headless API Support

    Access severity data programmatically through our API for custom notification interfaces. The severity field is available on every notification object, enabling conditional rendering and custom styling in your own UI components.

    Template Personalization

    Use workflow severity directly in your message templates with the {{workflow.severity}} variable.

    Create dynamic content that adapts based on the notification's importance level, such as "This is a high-priority message regarding your account."

    Configure severity levels for any workflow directly from the Novu dashboard under workflow settings.

    Existing workflows default to "None" severity, giving you full control over which messages receive priority treatment.

    Learn more

  • <Inbox /> Updates - v3.9.1

    Apply custom styling using appearance key callbacks based on your app data - bell icons change color by severity levels, customize notification appearance with payload data, and show/hide preferences by user role.

    Author:Paweł Tymczuk
    Paweł Tymczuk
    Cover

    Dynamic Inbox Styling with Appearance key Callbacks

    Previously you could only apply static strings to the appearance keys of the inbox, now for selected keys dynamic styling can be applied based on the key context. For example: notification count, notification data, etc...

    Learn more

    Introducing notification severity

    Notification severity is now represented on the Inbox styles, the bell icon will change color and the notification item will be highlighted with the given color.

    If you have unread messages with medium severity, the bell shows orange. Add messages with high severity, and it switches to red; otherwise, it remains gray.

    Learn More

    Enhanced Inbox Features

    New render props

    New render props are introduced for renderAvatar and renderDefualtActions so you can now render custom react elements without re-creating the whole Notification Item.

    Learn more

  • Command+K Palette

    Navigate the dashboard instantly with our new command palette. Press ⌘K (Mac) or Ctrl+K (Windows/Linux) from anywhere to access every feature, page, and action through a single, powerful interface.

    Author:Dima Grossman
    Dima Grossman
    Cover
    Command K visual demo

    Smart Search and Discovery

    Find any command, page, or workflow through intelligent search that understands keywords and context. Results are automatically organized by type with visual indicators for easy navigation...

    Context-Aware Commands

    The palette adapts to your current environment and permissions, showing only relevant actions. Switch between Development and Production environments, manage workflows and subscribers, or access account settings without leaving your keyboard.

    Streamlined Workflow Management

    Create new workflows, or edit existing ones directly from the command palette. Ideal for developers who need to quickly prototype notification flows or navigate between multiple configurations during testing.

    Built-in Help and Support

    Access documentation, share feedback, or view keyboard shortcuts without interrupting your workflow.

    Includes direct links to docs.novu.co and integrated support chat.

    The command palette is available immediately in your dashboard. Press ⌘K to get started and experience faster navigation across all Novu features.

    We Want Your Feedback

    What do you think of the new Command+K Palette?

    • Does it meet your needs?
    • Have you encountered any edge cases or challenges?
    • Do you have ideas for improving it?

    Join the Feature Discussion and share your thoughts with the community! Your feedback helps us refine and improve Novu for everyone. Let’s spark a conversation! 💬

  • Novu's MCP Server

    We've shipped our first MCP server implementation, enabling AI assistants to connect directly with your Novu workspace data and operations.

    Author:Himanshu Garg
    Himanshu Garg
    Cover

    We've shipped our first MCP server implementation, enabling AI assistants to connect directly with your Novu workspace data and operations.

    Available Tools

    - Core operations: API key validation, environment listing

    - Workflow management: CRUD operations, triggering, detailed configuration access

    - Subscriber operations: search and lookup functionality

    - Notification analytics: filtering, execution logs, detailed retrieval

    - Preference management: subscriber channel preferences (read/write)

    Setup

    Our MCP documentation provides full configuration instructions for Claude Desktop, Claude.ai, Cursor, and other MCP-compatible tools.

    This initial release covers core Novu operations. We're tracking usage patterns and will expand endpoint coverage based on developer feedback and common use cases.

    If you're using this integration or have specific endpoints you'd like to see supported, we'd appreciate hearing about your workflow in our Discord or through GitHub issues.

  • Translations 2.0

    Deliver notifications in your subscribers' preferred languages with automated selection based on subscriber locale. Create content in your default language, export it for translation, then re-upload translated files. Novu handles delivering the right version to each subscriber.

    Author:Adam Chmara
    Adam Chmara
    Cover

    Flexible Language Management

    Set your default language and add target languages you want to support. As your international reach grows, you can add more languages anytime, with multi-select fields that make managing dozens of locales straightforward.

    Per-Workflow Translation Control

    Navigate to Workflows > Select workflow > Enable Translations to enable translations on specific workflows. This gives you granular control over which notification flows support multiple languages while keeping others in your default language.

    Translation Key Integration

    Use {{t.key}} syntax in Email and In-App editors to create translatable content. The editor suggests existing keys as you type and lets you add new keys with "Add to Translations."

    Support for nested keys like {{t.product.details.description}} provides flexible content organization.

    JSON-Based Translation Files

    Export structured JSON files containing your default content, translate externally, then re-upload.

    Files follow a clear channel-based format:

    {
      "in-app": {
        "title": "Welcome to Novu!",
        "message": "Hi {{subscriber.firstName}}, let's get started!"
      },
      "email": {
        "subject": "Get Started",
        "body": "Thank you for joining us, {{subscriber.fullName}}"
      }
    }

    Smart Status Tracking

    When you update the default locale content, other languages automatically mark it as "Outdated, needs update."

    Translation groups organize all language variants per workflow, with clear status visibility and search capabilities.

    Real-Time Preview

    Test different subscriber locales using Preview Context to see how content renders in each language.

    Update translations directly from the preview interface.

    Available in beta for Team and Enterprise plans. Configure languages from the translations page, then enable translations on workflows where multilingual support matters. Get started with the translation documentation.

  • Email Layouts

    You can create consistent, branded email experiences across all your workflows with a reusable Email layout. Build your headers, footers, and branding elements once, then apply them to any email step across multiple workflows, bringing consistency, maintainability, and efficiency to your email communications.

    Author:Paweł Tymczuk
    Paweł Tymczuk
    Cover

    Visual Block Editor

    Design your layouts using the block-based visual editor. Add elements like headers, footers, images, and buttons by pressing the / key, making it easier for non-technical teammates to collaborate on email design. When you need complete control, switch to the code editor to work directly with raw HTML.

    Dynamic Content Integration

    Every layout must include the {{content}} variable, which dynamically injects the content from your email step into the layout. Write your email content once in the workflow, and it automatically inherits your branded layout styling—eliminating the need to duplicate branding elements across every email.

    Environment-Scoped Management

    Each environment maintains its own set of layouts, with every environment including one default layout. Create additional layouts based on your needs, such as transactional, marketing, or newsletter types, giving you flexibility across different environments.

    Note: You can share layouts by publishing changes to other environments.

    Subscriber Variable Support

    Use subscriber variables like {{subscriber.firstName}} and {{subscriber.email}} throughout your layouts to personalize branding elements. Only subscriber variables are supported in layouts to ensure compatibility across all workflows.

    Flexible Workflow Integration

    Use the Layout selector in the workflow email step editor to apply any layout to email steps. The selected layout wraps around the content written in the email editor, and you can preview the complete rendered email using the Test Workflow feature with actual subscriber data and different locales.

    Programmatic Layout Control

    Control layout selection programmatically when triggering workflows:

    - layoutId: undefined - Use the default layout for the environment (set by default on step creation)

    - layoutId: null - No layout applied (content only)

    - layoutId: "layout-id" - Use the specified layout by ID

    Learn more about Email Layouts in our documentation.

    Email Layouts are now available on the Novu dashboard sidebar. Free plans include one layout per environment, while Pro and higher plans support up to 100 layouts per environment. Navigate to the Layouts section in your dashboard to start building consistent email experiences.

Free to start, ready to scale

10K events/month free forever. From weekend projects to enterprise scale, we've got you covered.