| Well that's a very thoughtful question and I'm glad you made it. I literally woke up from sleep to answer it. Let me take them one by one. > sketches are effectively extensions installed over quark, much like VS-Code extensions. They come with the same advantages, and drawbacks of being tied down to what the "platform" offers, the platform being Quark. If quark makes opinionated decisions on architecture, you're limited by it I can see the concern there, but electron's API has been quite stable, at least since the past year. Also, Quark proxys electron's most common API's like creating dialog, notifications e.t.c So maintaining backward compatibility with electron's API is our headache. > uncompressing to an in memory file system and using that as the app binary unnecessarily increases RAM/CPU footprint Since Quark is designed for personal/prototyping projects, we are hardly talking in a few files here. Which would hardy take a few kilobytes. I would argue it is as efficient as other online IDE's. > each "sketch" is likely to spawn it's own JavaScript node context....... Yes you can compare it to a "new chrome tab". It only takes one process(by default, although you can spawn more) and memory mainly depending upon your DOM code. As far as "same resource as a single electron app" comment goes. I made that in the context on having multiple electron apps installed on your machine. Even 2 electron apps on your machine could weigh about 600mb. On the other side, Quark with a 100 other sketches on your machine would weigh about 400mb (assuming 1 sketch=~1mb). Given the fact that these sketches have full functionality as of an electron app, I believe this was a reasonable statement to make. Now, I'm not talking about running all those sketches, all at once because that would be a whole different thing. |