Not surprising it can get it to parity for a casual user. One thing I find though is that a lot of the vibecloned apps miss or ignore power user features or implement edge case features incorrectly. This was very, very true of the artcraft clones - as soon as you get to the more advanced things, they start to fall apart.
For a lot of the Figma code, there are SO many gotchyas in there, that while I'd be curious to try it, I don't think agents would be able to derive the why, and thus would attempt to optimize the implementation leading to incorrect usage. I led the variables workstream at Figma, and it still is the most complex thing I've worked on in my 20 years of tech. The amount of edge cases / conditionals / exceptions in it are staggering, just to get it to a point where it seems like it's "simple" (for a power users' definition of simple).
One other thing to consider though is the value of something like Figma isn't the functionality so much as the multiplayer platform aspect. This is toats fine if you're just doing solo work, but the collab aspect means you have to fight against the social network dynamics, which also can't be vibe coded.
I was thinking exactly this. Example - a 3d app I worked on. There is a tool that does a set of complex modeling operations on geometry. The operation description seems simple, the attributes that control the tool are easy to understand. But underneath it there is 50k lines of code - 1k for the common case and 49k to handle all the (literal) edge cases you can have with complex real world data, which came in from dozens of customers over the course of decades, mostly highly proprietary one off models.
I think agents can absolutely write the default path correctly and it will work most of the time and seem to be feature complete. But I don't see how they will quickly handle all those dozens of edge cases.
Over time it can happen - each time a case fails, send it to an agent and have it implement the conditional case. But that will take a long time. There is a reason most solid CAD kernels are decades old - they have been battle hardened and just handle all those edge cases better than other kernels.
Your statement about complexity is true with most SaaS offerings. They need to be everything to everybody so they can target as large a market as possible.
But as a user if you can identify the exact requirements you need your software to do, then it's very possible to vibe code a solution to do exactly what you're looking for. And your own offering doesn't need to be as complex, and can be tightly coupled to the other infrastructure you have.
I think one thing that's different now is that you have an agent that you can ask to handle those edge cases. UI/UX solves the very common paths and there is always a very powerful AI for actions and modifications to app.
Very curious if you try it and tell us how far it is from real figma
I feel like I'm missing something. Every time I attempt something similar, I end up with something that looks reasonable but doesn't hold up to scrutiny. To me, it feels like the models have become great at making demos more so than "fully featured clones". Admittedly, these demos keep getting better.
I wish there was a more standardized way of sharing these prompts, results and token usage.
I think if you do this outside mana it's 2-3x amount of code. You don't need to replicate all of mana. I'm bullish on mana making general figma level apps possible in one shot but I think for any specific one you can build your own. It's more about how good models have gotten in understanding UX and writing complex code
Ex-figma.
Not surprising it can get it to parity for a casual user. One thing I find though is that a lot of the vibecloned apps miss or ignore power user features or implement edge case features incorrectly. This was very, very true of the artcraft clones - as soon as you get to the more advanced things, they start to fall apart.
For a lot of the Figma code, there are SO many gotchyas in there, that while I'd be curious to try it, I don't think agents would be able to derive the why, and thus would attempt to optimize the implementation leading to incorrect usage. I led the variables workstream at Figma, and it still is the most complex thing I've worked on in my 20 years of tech. The amount of edge cases / conditionals / exceptions in it are staggering, just to get it to a point where it seems like it's "simple" (for a power users' definition of simple).
One other thing to consider though is the value of something like Figma isn't the functionality so much as the multiplayer platform aspect. This is toats fine if you're just doing solo work, but the collab aspect means you have to fight against the social network dynamics, which also can't be vibe coded.
I was thinking exactly this. Example - a 3d app I worked on. There is a tool that does a set of complex modeling operations on geometry. The operation description seems simple, the attributes that control the tool are easy to understand. But underneath it there is 50k lines of code - 1k for the common case and 49k to handle all the (literal) edge cases you can have with complex real world data, which came in from dozens of customers over the course of decades, mostly highly proprietary one off models.
I think agents can absolutely write the default path correctly and it will work most of the time and seem to be feature complete. But I don't see how they will quickly handle all those dozens of edge cases.
Over time it can happen - each time a case fails, send it to an agent and have it implement the conditional case. But that will take a long time. There is a reason most solid CAD kernels are decades old - they have been battle hardened and just handle all those edge cases better than other kernels.
Your statement about complexity is true with most SaaS offerings. They need to be everything to everybody so they can target as large a market as possible.
But as a user if you can identify the exact requirements you need your software to do, then it's very possible to vibe code a solution to do exactly what you're looking for. And your own offering doesn't need to be as complex, and can be tightly coupled to the other infrastructure you have.
I think one thing that's different now is that you have an agent that you can ask to handle those edge cases. UI/UX solves the very common paths and there is always a very powerful AI for actions and modifications to app.
Very curious if you try it and tell us how far it is from real figma
you can try it here: https://www.mana.space/home/rZfbotNWAXegQypmpkzaAPFC6Mp1/App...
Got an edit access version?
I feel like I'm missing something. Every time I attempt something similar, I end up with something that looks reasonable but doesn't hold up to scrutiny. To me, it feels like the models have become great at making demos more so than "fully featured clones". Admittedly, these demos keep getting better.
I wish there was a more standardized way of sharing these prompts, results and token usage.
My prompt was literally make something figma-level, have feature parity and do it in a way that a user can't feel a difference.
You can try mana, curious how it compares to your previous experiences. You can sign up here if you like: https://mana.space/invite/MANA-NPNV
> Claude wrote about 8,200 lines of React for the editor's core logic, including rendering, hit testing and undo.
I'm pretty sure figma clone cannot be done in 8k lines. Are you only cloned part of the logic?
I thought the same, please try it :)
My agent did it in one prompt, it git cloned https://github.com/open-pencil/open-pencil
This was from scratch
Work smarter, not harder. Mine even preserved the commit history.
i wonder whether these were in the training set for the models
yeah maybe they trained on the RL envs or maybe it's from computer use
Nice. How long does it take to generate a Mana clone? How about a Mana cloner clone?
I think if you do this outside mana it's 2-3x amount of code. You don't need to replicate all of mana. I'm bullish on mana making general figma level apps possible in one shot but I think for any specific one you can build your own. It's more about how good models have gotten in understanding UX and writing complex code
> P.S. I did this is on Mana which is our startup making it easier for LLMs to do it
Can Mana clone Mana yet?
we can try :)
Nice advertisement. Truth doesn't matter, just poop out something that visually looks like the correct thing and use it to shill your harness.
It’s not an ad just try it
you can try the editor here: https://www.mana.space/home/rZfbotNWAXegQypmpkzaAPFC6Mp1/App...
feels like magic! photoshop is there too :))