MEMBRANE
alpha
What is Membrane?
Stateful serverless TypeScript for internal tools.
FEATURESEXAMPLES
example github discord tracker
Send a Discord message when a commit is pushed to Github.
Save repository and channel information in
state
Subscribe to event
Send message to Discord
import { nodes, root, state } from "membrane";
export async function configure({ discordUrl, repo }) {
const [user, repository] = repo.split("/");
state.discordUrl = discordUrl;
state.repository = repository;
state.user = user;
await nodes.github.users
.one({ name: user })
.repos.one({ name: repository })
.pushes.$subscribe(root.handlePushEvent);
}
export async function handlePushEvent(_, { event }) {
const res = await event.commit.$query(
`{ message, html_url, author { login } }`
);
const body = {
username: "Github alert",
content: `${res.author.login} pushed to
${state.user}/${state.repository}: -
${res.message} (${res.html_url})`,
};
await fetch(state.discordUrl, {
method: "POST",
body: JSON.stringify(body),
headers: {
"Content-Type": "application/json",
},
});
}
What is Membrane?
Stateful serverless TypeScript for internal tools.
FEATURESEXAMPLES
Features Walkthrough
In this video we discuss 3 of the most important features of Membrane: Durability, The Graph, and Observability.
If you're curious about Membrane's architecture, Juan joined the devtools.fm podcast to talk through the nuts and bolts.
Communication
- 2024-10-04 Changelog 0.6 IDE text selection; GitHub, Anthropic driver upgrades
- 2024-09-27 Changelog 0.5 Better npm support; package sharing upgrades
- 2024-09-13 Changelog 0.4 Navigator file explorer; share page improvements
- 2024-09-06 Changelog 0.3 Support npm package types; Logs back navigation
- 2024-08-30 Changelog 0.2 Logs UI upgrades and better onboarding UX (examples)
- 2024-08-23 Changelog 0.1 Improved Navigator context menu and driver install UX
- 2024-06-19 Public Roadmap A Membrane program to share what we're working on
- 2023-09-20 Progress Update #3 Simpler function signatures; built-in Google auth
- 2023-09-13 Progress Update #2 Windows support and OOM handling
- 2023-08-30 Progress Update #1 Internal logging architecture; improved HTTP UI
- 2023-08-14 Progress Update #0 Exit nodes and Program Replays
Enter your email for occasional updates