BackReference

Roadmap

What is in the 0.0.x preview, what comes before a stable release, and what is deliberately later.

The goal is a notification framework that feels native to a TypeScript app: definitions in your repository, state in your database, and no outside service you have to run. This is an ordered list, not a promise that every open issue makes the next release. The source is ROADMAP.md, and the issue board has the detail.

In the 0.0.x Preview

  • Typed notification definitions and notify.send() payloads
  • Inbox, email, SMS, and webhook channels
  • Resend, Nodemailer/SMTP, signed webhook, and fake providers
  • SQLite and Postgres storage through Drizzle
  • Recipient, category, tenant, and required-notification preferences
  • Signed unsubscribe links and RFC 8058 one-click unsubscribe
  • Idempotency, deduplication, digests, rate limits, quiet hours, retries, and fallback channels
  • React inbox and preference hooks and components
  • Next.js route handlers and server helpers
  • SSE, WebSocket, and Postgres realtime
  • Explain, the delivery timeline, dev-mode capture, and testing utilities

Before a Stable Release

These come before adding more channels or providers, in this order:

  1. Durable dispatch and a transactional outbox, so a delivery survives a deploy or a crash. (#14, #34)
  2. Versioned database migrations: reviewable Drizzle migrations for every schema change, in place of the table-creation helpers. (#42)
  3. Bounce and complaint suppression: take in provider webhooks, update delivery status, and stop sending to suppressed addresses. (#15, #51, #52)
  4. Recovery tools to list failed deliveries and safely retry, resend, or cancel them. (#103)
  5. Pagination and performance budgets: no unbounded lists, and benchmarks anyone can reproduce. (#27, #95)
  6. Every documented package on npm, including @notifykitjs/nodemailer, which is not published yet.

After That

  • notifykit doctor, to check the database, migrations, providers, and secrets. (#67)
  • A studio that runs on localhost only, for looking through definitions, sends, and failures without a hosted dashboard. (#69)
  • Templates in files and React Email, with typed variables and stored render snapshots. (#101)
  • Generated contracts and reference docs. (#102)
  • Small, tested recipes for common SaaS notifications. (#107)

Deliberately Later

Push notifications, a long list of email and SMS providers, marketing broadcasts, a visual workflow editor, and adapters for frameworks beyond the current TypeScript stack are all useful. None of them defines the product, and none of them should hold up the reliability and developer-experience work above.

Contributing

Bug reports and focused pull requests are welcome. CONTRIBUTING.md has the commands to verify a change locally and the project’s scope guidelines, and security problems go through SECURITY.md rather than a public issue.