Building in-app UI with Knock

Learn more about what in-app UI experiences you can build in Knock with our APIs and SDKs.

In addition to delivering to out-of-app channels such as email, push, SMS, and chat apps like Slack, you can also use Knock to build great in-app notifications experiences too.

You can use our in-app feed channel to build stateful, in-app notifications experiences like floating feeds, inboxes, toasts and banners, and you can use our preferences API to build powerful user-facing preference controls.

See a live demo

Why build in-app experiences on Knock?

  • Real-time ready. Our in-app API comes ready with websocket support, no infrastructure setup required.
  • No data modeling required. We handle all of the common cases for you: accurate badge counts, polymorphic notifications, read, seen and archive tracking, and much more.
  • Build holistic experiences. Use the Knock workflow builder to create cross-channel notification experiences to power cases like "send to the in-app feed, if they don't see the feed message within 5 minutes then fallback to sending an email."
  • Complete APIs that are easy to use. We take all of the heavy lifting out of building APIs to support common in-app notification experiences, like preferences and feeds.
  • Drop-in components. We have components ready to help you get started with building in-app notification experiences in React.
  • Fully customizable. Whether you want to build a feed, toasts, a full-page inbox experience, or notifications that match your style guide, it's easy to customize the experience by overriding styles, or components, or building your own headless UI using our lower-level primitives.

Client SDKs available

We have the following SDKs available to use to build in-app notification experiences:

Under each client SDK, you'll find guides and references to help you get started.

Pre-built UI components

If you use our React SDK on the web, we provide pre-built UI components to:

  • Show an in-app feed, either as a popover or as a full-page experience.
  • Easily integrate Slack authentication and channel selection to power Slack notifications.

We also provide a full set of React hooks to integrate your own UI.

Going to production

You'll need to follow our checklist on going to production for any in-app notifications using Knock. Most importantly you'll need to secure your requests to the Knock API for each user.

Frequently asked questions