Automate things with TypeScript without APIs or databases.
Build bots, protoypes, and internal tools faster.

Join Discord


Enter your email to get updates
What is Membrane?
Membrane is a TypeScript runtime specifically designed to build personal automation tools and interact with APIs more easily.
Membrane programs cannot directly open files or make network requests. Instead, they can only interact with the world via graph nodes. You're in complete control of who can access what nodes. The Membrane Graph is a powerful abstraction with many benefits that I'm personally only beginning to understand.
It's through these nodes that programs make HTTP requests, send emails, or access APIs.
The graph guarantees that programs (especially the ones you didn't write) can only do what they say they do, and not, for example, exfiltrate data.
The graph is explorable and type-safe. Anything is referenceable, so access to data can be very fine-grained.
†: This is sometimes referred to as capability-based access control
❋ ❋ ❋

[Sorry! We're working on this]