Join Discord

Enter your email to get updates
What is Membrane?
Membrane is a hosted TypeScript runtime specifically designed to build personal automation tools and interact with APIs more easily.
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 }){ name: repository })

export async function handlePushEvent(_, { event }) {
  const res = await event.commit.$query(
    `{ message, html_url, author { login } }`

  const body = {
    username: "Github alert",
    content: `${} 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",
Install From VS Code
Dev Blog