Thriving Thriving TypeScript TS
↑ 58 ?
semorphe timcsy/semorphe

Same program, three views: code, flowchart, and blocks. Edit any side and it counts, and the other two sync in real time!

https://semorphe.com ↗
HEALTH ? 90 / Healthy
// solo builder// hidden gem// release machine apcsarduinoblock-based-programmingblocklycppeducationpythonvisual-programming ?

// readme


Paste in real C++ or Python and it turns into blocks. Drag a block and the code changes along with it. Switch to the flowchart and it draws the same program.

🔴 All three sides are entry points, not “one editable plus two read-only”:

You edit the code   →  blocks and flowchart update on the spot
You edit the blocks →  code and flowchart update on the spot
You edit the flow   →  code and blocks update on the spot

It’s not a “convert” button you press, and it doesn’t update only when you save. The other two sides are already moving while you type.

Type a piece of C++ → all three sides appear at once → edit once each in the code, the blocks, and the flowchart, and the other two sides follow on the spot → press Run, and it really runs

How it differs from other block tools

Most block tools are one-way: blocks can become code, but code can’t turn back into blocks. A few achieve two-way (for example, MakeCode), but once you step outside the subset they support, you can’t go back.

Semorphe aims at something else:

All three views are editable, and liveEdit any of the code, flowchart, or blocks, and the other two…