This is the exact philosophy we have in mind when building
@lunagraphHQ.
I’m a designer and an engineer, running a startup, and running a design studio, so we’re very much on the same page.
Let me explain:
"letting AI create the environment for you"
What we’re building at Lunagraph is a “programmable design canvas”. Exactly as you said, most of these tools are walled-gardens, if they don’t make a feature, you can’t build the experience. If Figma didn’t build motion, you can’t do motion design.
In Lunagraph, you can build any experience that you can build with code, make your own controls, handles, anything you need. You can use any React package, like three.js, or motion dev, and cook without waiting for a feature release. You can make a metallic 3d card with knobs for roughness, metallic-ness, and handles for lighting and for the svg logo.
You can literally build Lunagraph inside Lunagraph.
We are essentially here so you don’t have to remake these primitives every time. PLUS we’re also building the best UX to work on this programmable canvas with your own agents.
And now let’s talk about “source of truth”
I think everyone has been wrongly fixated on this.
Yes what’s in prod is what ships. But what about the intention?
Say you’re redesigning an app, or making a new feature: there’s this point in time where there are 2 truths, by definition:
> Your intended design is the intended truth
> Your current prod is the current truth
Eventually you want both to be the same, the intention implemented in the code.
But in this point in time, there are these 2 states. So where should the design intent live, for that period of time when it’s not yet implemented in the code?
No, not *always* a PR.
If you’re designing a new feature, and make a PR in the codebase, would you also be responsible to wire it up, make it truly work? Or would someone else do that part?
If it’s someone else, I promise you as a dev making the implementation, I prefer I make the PR and grab your designs piece by piece instead of getting a huge PR I have to unravel and re-wire. And if it’s yourself, it’s so much nicer and more efficient to iterate on the design without your coding agent trying to make it work before you know how you want it to work.
This is where Lunagraph comes in. It’s a place to do the big chunk of the design work, all the way to making a PR.
- Explore, drawing board, discuss
- Start formulating an intent
- Make prototypes, test, refine
- Iterate, share, get feedback
- Finalize
- Then convey your intention = to your coding agents, to devs, or to yourself.
And yes it’s made of React, so when you “convey your intention” you can choose to go as precise as you want:
- At 50% fidelity: you can share static designs and let your agent or your devs interpret the UX and flow
- At 90% fidelity: you can build a component, complete with the UX, interaction, transition, states, and how it takes in data based on Typescript data type.
- At 100% fidelity: you can implement it yourself and make a PR.
We’re definitely making Lunagraph for design engineers who can utilize AI in designing to the max.
Many of us are still exploring designing with code with AI, so me and
@Riyvir are working hard on distilling our own workflows and hundreds of user feedback into tools anyone can use right away, and building the best way for teams to add their own tooling on the same canvas.
I honestly don't understand many new design tools. There are Pencil, Paper, Elyx, MagicPath, and many more launching each month. Great designers are behind them, and it feels like many people use them. But I feel so disconnected from their approach to design.
Let me share my thoughts.
They all have a middleman issue. What you design is not what you ship. We're in the age of AI. I want to see the exact behavior of my components, I want to see the exact "rendering"/"look" of my components. Why do I need a canvas that shows me just "designs"? We had that already in Figma for many years. Authors of those tools can argue with me, saying, "But we're much closer to the code than Figma. We use HTML/React or whatever to render your designs." Great, but it's not the same code anyway.
From that issue comes another one, a lack of a single source of truth. Design lives in two places again. Users see the one that is built in code, while designers look at their versions on the canvas.
Then you can tell me, "Come on, I'm a designer, not a developer. I need a canvas. Those apps give me a canvas." Do you know that you can ask AI to bring you a canvas into the actual project you're working on?
"But building code is slow, I need something simpler just to quickly iterate on my design ideas." Again, what's the problem with asking your Claude/Codex to solve that thing for you? AI can stop running tests/linters/performance checks, or simply make some drafts on that canvas for you in plain HTML/CSS, exactly like those tools do. But if you want to do something more complicated, nothing can stop you.
Which brings us to another point. Those are closed-source tools. I like to adapt my environment to my needs and my tasks. I don't want to wait anymore for companies to decide to prioritize or build something that's important to me, or support the AI client that someone uses (recent Figma drama). Software development has become cheap. Bringing any controls or canvases into your environment is not an issue if you need them.
I still use Figma, more like a sketchpad or for some brand work, but I don't understand why I would want to switch to something else if those tools fundamentally have the same problem as Figma.
For me, those tools still feel like they're made for designers who haven't figured out yet what AI is capable of. And I'm not talking about letting AI design instead of you. I'm talking about letting AI create the environment for you, which can be much more powerful and more efficient for the exact tasks that you or your team work on.