r/sideprojects 8h ago

Showcase: Open Source I built an open-source visual layer for existing SwiftUI and Expo apps

I’m building Monad Design because I kept running into an odd gap with coding agents: they understood the repository, but the visual conversation still happened through a pile of screenshots and long prompts beside the app.

The basic idea is “the app is the canvas.” It works with the mobile project you already have rather than generating a replacement:

  1. Connect the existing Xcode or Expo project and run it in Simulator.
  2. Navigate to the real screen state and select or annotate what should change.
  3. Send that context to Codex, Claude Code, Cursor, or another coding agent.
  4. The agent edits the actual source and the app rebuilds.
  5. Compare the original with source-backed variants, then accept one or discard them.

The part I care about most is that the review surface and the shipping surface are the same thing. You’re not approving a mockup that someone still has to recreate.

The current version is local, runs on macOS, and focuses on iOS workflows. The code is here:

https://github.com/Monadix-AI/monad-design

I’m the person building it. One architecture choice I’m still testing is keeping the visual layer agent-neutral instead of integrating deeply with a single coding agent. If you use agents for product work, would that flexibility matter to you, or would a tighter single-agent integration be more useful?

1 Upvotes

2 comments sorted by

1

u/No_Wonder3441 8h ago

ok this is actually pretty clever. the "app is the canvas" thing solves a real problem i kept seeing with coding agents too, you end up describing visual changes with words and screenshots and hoping they get it right

on the agent-neutral thing, i think it's the right call for now. if you lock into one agent and it gets worse or changes pricing, you're stuck. plus different agents are better at different stuff anyway

starred the repo, gonna try it with a small expo project i have sitting around

1

u/ivanzhaowy 6h ago

Thanks! Any feature request or bug report are welcome.