I built Weft over the last two weeks of Christmas break. I was teaching my kids Python and noticed the lack of interactivity in some of their learning experiences. The feedback loop was too long.
I wanted to provide them with an experience similar to Bret Victor's concepts on Learnable Programming; i.e. an easier way to learn is to see immediately the reaction to your actions. Hence the reactivity ;)
It is currently in early alpha and I’m planning to open-source the repo under AGPLv3 soon once I clean up the prototype code.
I wrote up a short blog post with more details on the "Why" and the implementation here: https://zenadi.com/posts/weft-announcement
I’d love to hear your feedback or ideas on how to make this better.
Simplita•11h ago
In reactive systems, we’ve found the learning experience improves a lot when users can inspect how a value changed over time, not just its current output. Do you see Weft moving toward any kind of execution history or state timeline, or are you intentionally keeping it minimal for teaching?
zeapo•11h ago
I'd like to keep the center of the screen clutter free and add side-bars later on with tooling. Among them, an inspector just like what PyCharm has when opening a notebook. For globals it's quite simple to add, however to inspect the content of a single compound statement it might be a bit tricky (if you've got ideas I'd love to learn more).
Some of the next "urgent" features are improving the code state management (history), having multiple sessions, being able to save them, etc. Maybe adding a way to bring the data online somehow.