Log inSign up

User onboarding for
Angular apps

Flows integrates with Angular as a service. Add user onboarding, trigger from route events, and keep your components untouched.

How Flows powers Angular user onboarding

Flows integrates with Angular's dependency injection system. Initialize it as a service, identify users after authentication, and trigger onboarding workflows from anywhere in your component tree.

Product tours

Guide users step-by-step through your product with tooltips, modals, and hints that feel native to your app.

Embeddable components

Embed interactive content directly inside your app layout: checklists, empty states, and contextual guides without floating overlays.

Custom components

Use your own design system and component library to build adoption experiences that match your product's look and feel exactly.

Localization

Deliver workflow content in any language to reach a global user base.

User targeting

Target specific users or segments with AND/OR logic to show the right experience to the right person.

Analytics

Track workflow performance with built-in analytics. Measure completion rates, drop-off, and engagement across all your adoption experiences.

Designed for unlimited customizability

Flows is designed to be a “Headless product adoption platform”. We’ll focus on user state problems, so you can focus on your own product.

Localization

Localization

Support any language or locale to reach a global audience.

Segmentation

Segmentation

Target specific users or companies based on properties or behavior.

Versioning

Versioning

Deploy, audit, and restore your changes across environments.

Analytics

Analytics

Understand how users interact with your workflows.

Environments

Environments

Test workflows on staging before deploying them to production.

Actions

Actions

Trigger actions based on user behavior.

Workflow logic

Workflow logic

Branch, filter, and control the path of your workflows.

Privacy first

Privacy first

Built with privacy in mind. Minimizing data collection.

Questions and Answers

Initialize the Flows SDK inside a root-level Angular service and call it after your auth service resolves user identity. From there, Flows evaluates targeting rules and activates the right onboarding workflow automatically, with no logic needed in individual components. See the Angular installation guide for step-by-step instructions and code examples.

Yes. Flows detects client-side navigation and re-evaluates trigger conditions on each route change. You can configure onboarding steps to activate only on specific routes without adding custom route guards or navigation hooks.

Pass user properties when initializing Flows, typically from your auth service after login. Set targeting rules in the Flows dashboard using properties like createdAt or a hasOnboarded flag, and Flows handles the rest without any component-level conditional logic. Check out our guide on targeting only new users.

No. Flows operates outside Angular's change detection cycle. Workflow state changes are event-driven and don't trigger unnecessary re-renders. If you need to reflect Flows state in your Angular components, you can wrap it in an observable or a signal.

Yes. Flows doesn't depend on Angular's module system. Initialize the SDK in your bootstrapped provider or root module and it works the same way regardless of whether you're using NgModule-based or standalone component architecture.

Build better Angular user onboarding today

A lightweight SDK that fits Angular's service-based architecture. Add onboarding workflows without touching your components.

Get started for free

No credit card required. Free forever.