Novu

Ready to Get Started with Novu?

Do either of these statements describe you? If so, please fill the form out, and we'll respond with next steps.

  • I am a non-technical user

    Novu's next-generation code-based workflows require access to an IDE, command line, and knowledge of Javascript.

  • Our backend stack isn't Javascript-based

    Our code-first workflows work best with a Javascript (NodeJS, Next.Js, etc.) backend.

1import { workflow } from '@novu/framework';
2
3const commentWorkflow = workflow('comment-on-post', async (event) => {
4  const inAppResponse = await event.step.inApp('notify-user', async () => ({
5    body: renderReactComponent(event.payload.postId)
6  }));
7
8  const { events } = await event.step.digest('1 week');
9
10  await event.step.email('weekly-comments', async (inputs) => {
11    return {
12      subject: `Weekly post comments (${events.length + 1})`,
13      body: renderReactEmail(inputs, events)
14    };
15  }, { skip: () => inAppResponse.seen });
16}, { payloadSchema: z.object({ postId: z.string() }) }
17);
18
19// Use the same familiar syntax to send a notification
20commentWorkflow.trigger({
21  to: { subscriberId: '[email protected]' },
22  payload: { postId: '12345' }
23});

Javascript at the core for unlimited flexibility

Built for developers, with drop-in integration that can be infinitely customized, no matter your application, or use case.

Ready to get started?

  • Watch the tutorial

    Use our video walkthrough as a guide to get started quickly.

    Onboarding Walkthrough
  • Create a free account

    Create a free account, and get notifying.

    Create Account

If you're ready to write some Javascript and get notifying

This video walks you through all the important details to get your local dev environment up and running and code your first workflow.