• *This post needs some more EDIT - so take it with a pinch of salt, because it does not include all the aspects a sandbox serves... :( * - aka: ...if I would have more time, I would have written a shorter letter (post)...

    @Robin, indeed, I would like to have stronger code / library organization options, like projects would include subfolder - for each project one - and - related to that project - a folder just for the project specific modules. The general modules folder would always be available.

    But last sentence in previous paragraph kind-a invalidates the first one, because it becomes a never ending rabbit trail: when do you decide a module becomes generally available or stays within a project specific modules folder...

    After all the, the IDE is a free-be, to make things easy. For me it boils down to a sandbox per real project, that gives the extra level to have project specifics going very well, since the sandbox name can be chosen.

    What I'm now missing with this sandbox being a project, where can I put modules across my projects? My answer is: if they are of that sort, grow them to general purpose AND general PUBLIC use, make a merge request and they are in the espruino.com/modules folder on the Web for the BENEFIT of ALL.

    If that is too course granular, yes, a local extra configurable folder for shared folders folders across sandboxes would be the perfect solution... kind-a the same as 'requested' in the very first sentence of this post for all users that like more control over library structuring locally, but made much simpler to implement when thinking of the sandbox is the project.

    Modules would then - depending the configuration - searched first locally in the modules folder, then - again locally - in the shared modules folder - and then in the - espruino.com/modules folder. This configuration can become a bit tricky when the existing of a non-minified should be found first even though a minified version exists in a different precedence / sequence. It is though something to think about.

    (Naming should then be a bit different in the end with sandbox being project folder, project folder being main (level 0, or a like, and would most of the time include only one file, since after all, only one main can run on the mc and mains are not switched or chained, even though they can when stored on sd card using some RYO code), modules keep their name, and an additional - shared modules is chosen - ...)... and again, tripping over my own (thought) feet...

About

Avatar for allObjects @allObjects started