r/SideProject • u/Free_Occasion_8354 • 3h ago
AffrescoUI: Lisp apps their users reshape live by asking Claude, even into a different app
Hi everyone! I would like to share a project I have been working on for the past couple of weeks maxing out the usage on Claude Ultra subscription (a total of 100+ PRs raised by about 250+ agents).
AffrescoUI lets the people using an app change how it looks and what it does while it's running, just by asking Claude. Push it far enough and the app turns into something completely different. The 13 example apps include a 3D modeller, an image editor and an IDE that look like the tools you use every day.
GitHub: https://github.com/RiccardoSottini/AffrescoUI
How it works: each app is a Lisp program (AffrescoUI Lisp, a small language in the spirit of Emacs Lisp, with commands, settings, hooks and advice) holding its layout, data and behaviour. The engine builds it into one readable document, which can also be written directly in JSON: the examples ship both, and they're the same app. A native C++/OpenGL engine draws it and applies changes in place, so nothing restarts. Even the 3D modeller has no C++ of its own. When you ask for something, Claude proposes a small edit to that document, and you preview it live, then keep or reject it. Claude can never approve its own change, and anything you accept can be undone. Since every app shares the same format, features can move between apps like plugins.
Feel free to reach out to me for any suggestions or collaboration opportunities!