Alternative to web-push for modern runtimes. Zero-dependency TypeScript toolkit for standards-compliant Web Push notifications across Node.js, Deno, Bun, and Cloudflare Workers. web-push fails on Cloudflare Workers, Vercel Edge, and Convex with crypto.createECDH is not a function. pushforge solves this with standard WebCrypto APIs: VAPID auth, ECDH key exchange, AES-GCM encryption, CLI tooling. Zero dependencies vs web-push's 5+.

NPM | GitHub | Live Demo


Media


Key Contributions

  1. Cryptographic Stack: Built RFC 8291/8292 Web Push cryptographic pipeline (VAPID ES256, ephemeral ECDH P-256, HKDF-SHA256, AES-GCM) with isomorphic WebCrypto abstraction working identically across Node, Deno, Bun, and Cloudflare Workers. Zero third-party dependencies.
  2. API Design: Designed buildPushHTTPRequest: single typed API composing encrypted payload, canonical headers, and delivery semantics (TTL, Topic, Urgency) for turnkey push delivery.
  3. Type Safety: Enforced type-driven correctness with TypeScript generics (PushMessage<T extends Jsonifiable>, RequireAtLeastOne<>) surfacing protocol errors at compile time, reducing runtime integration faults.
  4. Testing: Engineered wire-level integration tests (Vitest) against FCM/WNS endpoints, validating VAPID headers and delivery semantics across push providers.

Skills