Membrane Beta
2025-04-23We’ve been building a platform for programmers to create useful internal tools and automations faster by rethinking the way small applications are built and deployed. Today marks an important step toward that vision with the release of:
Dashboard
, a radically simpler way of building utilitarian UIs with JSX and your Membrane graph.Brane
, our AI assistant that writes code and interacts with your graph.Autocomplete
, our fine-tuned auto-complete model to help you write Membrane programs effectively.sys-db
, to securely access your external databases.
If you or your engineering team are interested in building internal tools quickly and influencing the future of Membrane, reach out!
During this beta phase, we'll be working closely with design partners. That is, we'll help rapidly build useful internal tools for engineering teams and get valuable product feedback in return.
These beta features are open to all users today on ide.membrane.io.
Dashboard
The Dashboard is a customizable interface for interacting with the data and resources in your Membrane graph, and by extension, APIs integrated with it.
Last year, we started thinking about the next steps for Membrane now that we have a solid foundation for a "uniform data layer". So after lots of thinking, brainstorming, discussions, and research we came up with the following list of requirements:
- Instantanous feedback loop. Every code change should be immediately reflected in the UI
- No boilerplate for fetching data and rendering loading states
- Built-in data pagination, search and filtering
- Must feel familiar to any web developer (i.e. flexbox)
- Users must be able to make ad-hoc changes as needed
- Rich and actionable errors that are not hidden in a console
- Resilience to partially available data
- Ability to jump from any UI element to it's corresponding line of code (like "Inspect Element" but it takes you to the editor)
- Ability to jump from any UI element to the source of data it's using (We call this "semantic awareness")
- An AI assistant must be able to work alongside the user by understanding what's on the screen and how it can use it
- Utilitarian but can't look like crap. To quote Ivan Zhao, “Software can and should be beautiful”
- Quick and snappy navigation
We also compiled a (rather short) list of non-goals:
- Full CSS support
- Full DOM support
- Must use React or similar
Admittedly, not every item on the list has reached it's final form in the dashboard yet. Most are either close, or proven to be feasible though, and will be getting polished in the coming weeks. We're shipping an early version to get feedback and iterate on the design, so please try it out and let us know what you think!
The overarching goal for the Dashboard is that, combined with our durable/auditable JavaScript runtime and our new AI Assistant (more on that below), it will make building utilities, automations, admin panels, and any such tools significantly easier than ever before.
To create a block, you simply drag 'n drop any graph node (e.g. GitHub issue or Stripe subscriber) onto the dashboard and decide what fields and actions to show. With a helping hand from Brane——which we'll cover below——you can generate dashboard views quickly for I-just-need-this-to-work internal tools.
To try out the dashboard now, install membrane/dashboard and create a views.tsx
file in any
program. For full instructions, read our dashboard docs guide. And of
course, let us know what you think!
Brane
Brane is our AI assistant.
In addition to the core features you'd expect out of any coding assistant, Brane has knowledge of Membrane patterns and access to Membrane features.
Today, Brane can create new programs, invoke program actions, query your program data, add program connections, and create dashboard views. Soon, Brane will also be able to set up timers and crons, scan program logs, and more.
To start using Brane, simply click the Brane (AI)
tab on the right sidebar and start chatting. To read up on Brane's capabilities, check out our Brane docs and Thomas's blog post.
Autocomplete
As you've probably noticed, our IDE was missing a feature that is now table-stakes in any IDE: LLM-powered code completions. This was a big pain point for many users. So in this release, we are very excited to introduce our own autocomplete functionality built on a model that was fine-tuned with Membrane-specific code patterns.
Expect a blog post about this pretty soon.
sys-db
sys-db
is a new system program (like sys-http
and sys-email
) that allows you to connect any program to a SQL database to a Membrane program.
We currently support PostgreSQL, MySQL, and Microsoft SQL Server database.
To get started, see our sys-db documentation. And please reach out if you'd like support for another database.
CFP (Call For Packages)
We're excited to see what you build with the dashboard and all the new tools in Membrane. To that end, publish your programs as packages and share what you're working on in our Discord server!
Over the past many months we've received great feedback over email, on our Discord server, and in user interviews. Keep the feedback coming :)
- Juan Campa (juan@membrane.io)