iodide-project / iodide

Literate scientific computing and communication for the web
Mozilla Public License 2.0
1.49k stars 142 forks source link

restructure file heirarchy, state-schemas, actions, reducers, etc to organize by feature rather than function #2113

Open bcolloran opened 5 years ago

bcolloran commented 5 years ago

just wanted to put together an issue to track the idea @hamilton proposed last week: right now, our files are mostly split up by function -- components, reducers, actions, etc -- but this makes it hard to know what is in scope when you are working with only one slice of the app.

some references:

maybe i'll do a draft PR organizing some feature to see what an option could look like, just for discussion. maybe the console would be good since i was just working on that.

@hamilton @wlach @mdboom @openjck more ideas and reading materials very welcome! :-)

wlach commented 5 years ago

I think it would indeed be nice if the actions/reducers/component logic was a little closer together for each feature. I find myself using project search to navigate between files more often than I'd like to admit -- it would be much more convenient if things were closer together in the filesystem so I could use the directory sidebar in atom more easily (since like would be close to like spatially).

The feature example you linked to makes the most initial sense to me -- the reducks approach seems weird, though I'm sure I would get used to it. Doing up a prototype for discussion sounds good.