Novu logoNovu

Changelog

Product updates, improvements, and fixes

Follow us on X

All changelog posts

  • 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.

  • Environment Publish Mechanism

    Manage workflow deployments with confidence using our new environment-based publishing system. This approach lets you develop in isolated environments and deploy changes through a structured, visual diff process that ensures production stability while maintaining development flexibility

    Author:Emil Pearce
    Emil Pearce
    Cover

    Manage workflow deployments with confidence using our new environment-based publishing system. This approach lets you develop in isolated environments and deploy changes through a structured, visual diff process that ensures production stability while maintaining development flexibility.

    Read more

    Streamlined Development Workflow

    All workflow editing and configuration now happens exclusively in Development environments, protecting your production systems while giving you complete creative freedom. Develop, test, and iterate on complex notification workflows without worrying about accidentally impacting live users. When you're ready, publish changes to production through a controlled, reviewable process.

    Visual Change Review

    Before publishing, review exactly what will change with our diff interface. The system clearly shows which workflows have been modified, added, or deleted, including changes to step configurations and translation updates. No more guessing what's different between environments—see the complete picture before you deploy.

    Smart Change Detection

    The system automatically tracks modifications across all aspects of your workflows, from individual step configurations to translation variants in multiple languages. Whether you've updated a delay timer, modified message content, or added new conditional logic, every change is captured and clearly presented for review.

    Available now in all Novu accounts—look for the new "Publish changes" button in your Development environment dashboard to get started with safer, more predictable workflow deployments.

  • <Inbox /> Updates - v3.7.0

    Author:Emil Pearce
    Emil Pearce

    Seen Status Tracking

    Notifications now include seen status tracking with automatic visibility detection, timestamps, and API endpoints for filtering by seen/unseen state.

    What's new:

    - Automatic "seen" marking when notifications become visible in UI
    - First-seen timestamp capture for each notification
    - Bulk operations to mark individual or multiple notifications as seen
    - New API endpoints for seen status management and filtering

    Inbox Timezone Awareness

    The Inbox component now delivers notifications based on each subscriber's timezone instead of the system timezone, improving the in-app experience for users across different locations.

    Fixed: Dynamic Subscriber ID Handling

    <Inbox/> and <Bell/> components now properly refresh when subscriberId changes from undefined to a valid value.

    Fix details:

    - Automatic session reinitialization on subscriberId changes
    - Complete state refresh when subscriber context updates
    - Applies to @novu/react, @novu/js, and @novu/react-native packages

    Custom Data Filtering

    Filter inbox notifications by message data attributes using the new data query parameter.

    const queryParams = {
      data: JSON.stringify({ 
        'order_status': 'pending', 
        'priority': 'high' 
      })
    }

    Implementation:

    - AND logic filtering - all specified key-value pairs must match
    - Input validation and sanitization prevent injection attacks
    - Graceful handling of malformed JSON input

Free to start, ready to scale

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