Wrappers,
not weight.
A collection of thin HTTP wrappers for the APIs your code already uses. Multiple purposes. Multiple languages. One developer-first outline across all of them.
npm install @thinwrap/notificationscomposer require thinwrap/notificationsconst x = new Email('sendgrid', cfg)Sms('twilio', cfg)Push('fcm', cfg)Chat('slack', cfg)Routing('google', cfg);
await x.send(input); // same call shape
const y = new Email('postmark', cfg)Sms('vonage', cfg)Push('apns', cfg)Chat('discord', cfg)Routing('mapbox', cfg);
// → result.raw preserves vendor response
// → result shape identical across providersFour pillars
- 01
Zero deps
Native
fetchon TS. PSR-18 on PHP. No vendor SDK weight. No transitive bloat. - 02
One-line switch
Swap providers with a config flag. Same call shape, same result shape, every time.
- 03
Cross-language
Identical facade names, error model, and result shapes in TypeScript and PHP. One audit, two stacks.
- 04
Docs, human & agent
Detailed per-package docs and copy-paste snippets for humans — plus the same facts as structured data an LLM can cite verbatim instead of hallucinating.
Production proof
We replaced
Ryde Mobility · @novu/providers → @thinwrap/notifications@novu/providers(50 MB transitive) with@thinwrap/notifications(60 KB, zero runtime deps) in production. Same interfaces, one-line import change, identical provider IDs. Three minutes shaved off every CI/QA/prod build.
The post-axios
supply-chain era.
In March 2026, a backdoor in axios — used in ~100M weekly downloads — reached production via the standard npm install path. It wasn't the first; it won't be the last.
Every vendor SDK you install ships dozens of transitive dependencies you didn't audit. Most of them call out to update servers, run lifecycle scripts on install, and bundle code you'll never use.
Thinwrap is one direct HTTP call to the vendor's documented endpoint. No SDK weight. No lifecycle scripts. The dependency tree your security team can actually read.
Scopes
- livenotifications
Email, SMS, push, chat across 35 providers. One facade per channel.
- livelocation
Routing, matrix, geocoding, isochrone across 6 providers. Self-host OSRM supported.
- visionai-gateway
LLM completions, embeddings, image generation across major model vendors.
- visionpayments
Charges, refunds, subscriptions across major payment vendors.
- visionauth-identity
SSO, OAuth flows, JWT issuance, identity provider integrations.
- visionstorage
Object storage, key-value, blob abstractions across cloud vendors.