← knowledge.oriz.in

Knock

service notificationsmulti-channelknockprimary

Knock

Role

Notification orchestration — the family's single workflow engine for cross-channel notifications. One Knock workflow per event type (billing receipt, password change, comment reply, feature rollout) fans out to the right channels in the right order, dedupes within a window, and surfaces in-app + email + SMS + web push from one place.

Knock does not replace FCM — FCM stays as the transport for the web-push channel. Knock's web-push provider config points at our Firebase project. Knock owns scheduling, batching, channel selection, and per-user preference; FCM owns "actually push to the browser." Same split for email (Resend is the SMTP transport behind Knock's email channel).

Free tier

Card / subscription required?

NO. Free-tier sign-up is email-only. No payment method requested. Stays free as long as monthly volume stays under 10K notifications across all channels.

What runs through Knock

Channel mapping

Channel Transport Why Knock + transport split
Web push FCM FCM is free unlimited on Spark + iOS PWA support
Email Resend Resend already wired for transactional
SMS Knock-bundled (Twilio / MessageBird) Pay-per-SMS only, no monthly fee
In-app feed Knock-hosted Drop-in <KnockFeed /> component
Slack Knock direct Used for ops alerts only

Alternatives

Swap cost

Medium — Knock workflow definitions live as YAML in the Knock dashboard; export-to-JSON is supported. Swapping means recreating workflows in Courier or similar. Channel transports (FCM, Resend) do not change, so the Worker-side code stays the same.

Why this is our pick

Free 10K/month is generous — the family's combined notification volume across 11+ sites is well under that. The orchestration model fits how we think about notifications (one event → many channels), and it leaves FCM and Resend doing what they're best at. The in-app feed component drops in as <KnockFeed /> — saves us building a notification center in @chirag127/oriz-kit.

Cross-refs