meemoo / meemooapp

Creative apps to use, build, share, and hack in the browser.
http://meemoo.org/hack-our-apps/
GNU Affero General Public License v3.0
259 stars 52 forks source link

edit module source #59

Open automata opened 12 years ago

automata commented 12 years ago

We need a kind of button on every node to show up the editor. Similar to "view source" on browsers.

Every module (initially iframe one) should also refresh its content each time the editor changes (or a "Eval" button is pressed).

Because of this we cannot have the editor as an iframe module: we need to call refresh to reload the entire iframe.

Related with #48

automata commented 12 years ago

We have a code editor on http://li7e.org. Maybe a "edit source" button could help on that.

nathanathan commented 10 years ago

:+1: I would love to see some of low-level code editing support in meemoo

Another way to do it would be to add a text editor module and an evaluator module. The text editor could be based on ACE (I would like it if it had multiple selection support.), and sends signals with the text when it changes. The evaulator could take a javascript function as a string from the editor, along with an additional data input and return whatever the function returns when it is called with the data input. The evaluator could also have an error output, which one could potentially feed back into the editor to find the line with the error.

I would also like to see a module that takes HTML as input and just renders it. I would like to be able to plug an editable template into an elevator that runs a templating engine function, and then render the HTML output, live, as I edit the template.

@automata http://li7e.org seems buggy to me, I can't press any buttons in the demo, it's not clear exactly which url I'm supposed to use in meemoo.

forresto commented 10 years ago

@nathanathan thanks for jumping into the issues here. I should say that this project is on feature freeze for a bit as I work on the editor for http://noflojs.org/ ... when that is ready I'll port all of the modules over and Meemoo will get all of the cool things that we're designing for NoFlo UI. If you want a sneak-peek at what we're currently bashing on: http://the-grid.github.io/the-graph/the-graph-editor/

nathanathan commented 10 years ago

@forresto Thanks for linking me to NoFlo. The demos seem to use more low-level components than the meemoo demos. I think a visual editor for connecting high level components makes putting together many types of apps tremendously easier, but for low level things like parsing dates I think text might be easier to work with.

I would like to see a way to put views on top of meemoo apps that only show a few components at a time without all the editor stuff. I hope there is something like that in the pipeline.

By the way, are you aware of the Mozilla's Appmaker? It struck me as being very similar to meemoo, but it uses broadcast channels instead of a graph editor.

forresto commented 10 years ago

Certainly, all of the date parsing to clock hand angles could be in one module. That would be more like Meemoo is now. NoFlo is designed to be lower-level, but that just gives you the choice of where in the stack you're working.

The "app view" above the graph view is something that I've been wanting for some time. Moving to custom elements (like AppMaker) will make that cleaner.

I'm not convinced that AppMaker's channels are easier to understand than graphs, but it's cool that they are working towards similar goals.

nathanathan commented 10 years ago

I think channels view and the graph view both have benefits. The graph view makes it easier to track the flow of data throughout an app. I think the channels approach would be easier to use for building apps on small screen devices like phones (connecting components that don't fit on the screen together via the graph view seems like a pain). Also, channels are probably much less work to implement as a feature.