[Cuis-dev] Cuis in the Web, one click to run

Juan Vuletich juan at jvuletich.org
Thu Sep 23 07:44:04 PDT 2021


On 9/21/2021 9:43 PM, Vanessa Freudenberg via Cuis-dev wrote:
>
>
> On Sun, Sep 19, 2021 at 10:58 AM Nicola Mingotti <nmingotti at gmail.com 
> <mailto:nmingotti at gmail.com>> wrote:
>
>
>     Hi Juan, guys,
>
>     I think I made a large step forward this weekend on "CuisJS" :)
>
>     Please follow the instructions here:
>     https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev/wiki/Run-Cuis-in-the-Web-Browser.-(SqueakJS)
>     <https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev/wiki/Run-Cuis-in-the-Web-Browser.-%28SqueakJS%29>
>
>     Now there remains only to make the auto-update to make CuisJS
>     reflect the
>     changes in Cuis-Smalltalk-Dev.
>
>     let me know !
>
>     Bye
>     Nicola
>
>
> Very nice! I'm impressed 😊

:)

> Older versions of Cuis used to run much faster on SqueakJS – guess the 
> changes in the last few years added a bit of overhead that isn't 
> noticeable on fast VMs.

Yes. Cuis started as a cleanup effort, to enable more freedom in later 
evolution. After some years, we actually started following that 
evolution path. This meant a more flexible design for Morphic, slightly 
more complex tools, and a more modern, more expensive look. This is 
becoming even more so with Refactorings, TrueType and VectorGraphics.

But just evaluating `Preferences slowMachine` on an updated Cuis will 
simplify the UI and tools, and the system will be much more responsive.

> As for long download times: SqueakJS supports a "virtual" template 
> file system backed by a directory structure accessed via http. It's 
> used for example in EtoysJS and ScratchJS.
>
> Here's a screenshot showing these virtual files inside of Etoys. 
> Notice that only the image and compressed sources have today's time 
> stamp. These are the only files that were actually downloaded, all 
> other files just have virtual meta data:
>
> ...
>
> Only after I click a few of the files are they actually downloaded and 
> from then on live locally:
>
> ...
> If that's interesting to you I can tell you how to do it. I don't 
> think I ever documented that part 😅
>
> Basically it just looks up "sqindex.json" in a directory. E.g. this 
> one is backed by:
>
> https://freudenbergs.de/vanessa/squeakjs/Etoys/sqindex.json
>
> To create sqindex.json files for a whole directory hierarchy use this 
> script:
>
> https://github.com/codefrau/SqueakJS/blob/main/utils/mksqindex.py
>
> and then when running the VM pass a "templates" option as in
>
> https://github.com/codefrau/SqueakJS/blob/main/etoys/etoys.js#L38
>
> Vanessa
>

Thanks!

-- 
Juan Vuletich
www.cuis-smalltalk.org
https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev
https://github.com/jvuletich
https://www.linkedin.com/in/juan-vuletich-75611b3
@JuanVuletich

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20210923/64a5d526/attachment.htm>


More information about the Cuis-dev mailing list