I think it stores it in IndexedDB but there are other backends as well. I didn't look too closely how it handles persistence. It was something I came across while doing some research on smalltalk. Didn't pursue it any further other than thinking it was an interesting project.
25 years ago or so I was introduced to a Smalltalk and VisualAge. I would not be able to put up more than two lines of Smalltalk right now but back then I created some UI interfaces and non trivial software in the amount of time that floored me. Smalltalk and VisualAge were way more advanced than anything I was working with back then (think Turbo C++ or AIX). Not sure what happened to all of this, but it looks like there are efforts from few remaining enthusiasts on that front.
My best guess as to what happened is that IBM likely lost interest in Smalltalk and VisualAge as a strategic direction. Also, even now all the efforts I see on that front cling to the design aesthetic of the OS/2 of the early 90s which does not help the cause either.
Wow, a live coding web based Smalltalk environment! What a great topic for a tech discussion! And maybe a discussion on how this could sort of thing could be the future - the original dream of Sir Tim Berners-Lee of a real "read write" web, where people are no longer passive consumers of content pushed on them by large corporations?
Instead - 5 separate comments complaining about the colors used on the first landing page, and one comment complaining about its choice of name. Sigh. ( edit - this video might be a better intro to Caffeine - https://vimeo.com/286872152 )
I agree - I've been excited about this sort of thing ever since the early days of asm.js (now webasm), not to mention the Internet Archive's classic game collection.
In addition to this Squeak (et al.) implementation, recent HN discussions have covered web browser implementations of Smalltalk-80 as well as BBC BASIC and Multics. I'd really like to see more of this; for example, it should be easy to make a browser version of Oberon - I'm sure someone has done it already.
I think there are lots of great opportunities for creating modern programming environments (Pharo...) and also making interactive, usable versions of important historical environments such as Smalltalk-80 or UNIX.
I'm not sure how well Morphic deals with HiDPI. Presumably it should be fixable, though the performance could drop.
Of course the beautiful part is that the rendering engine is written in Smalltalk, so anyone can fix it in the environment itself. ;-)
I think there is also an alternative UI that uses DOM text and widgets? Note the bidirectional JavaScript bridge allows you to access the DOM easily. Presumably DOM text and widgets would render fine in HiDPI mode.
Personally I'd be fine with some sharp bitmap fonts and UI elements; bitmap fonts work great for programming, and they are quick to render, fun, and nostalgic (also there are some beautiful classical bitmap fonts created for the Alto, Smalltalk-80, Macintosh, etc..)
This is supposed to be a webpage that you can edit live, in place, in Smalltalk programming environment.
No surprise that you are confused given the design of from quarter of century ago, and ideas behind it and the programming language were relegated to a very small community of enthusiasts.
It uses SqueakJS so in theory it supports whatever SqueakJS supports: https://squeak.js.org/.
> SqueakJS executes Squeak in a web page without a plugin. It is a fully capable virtual machine implemented in pure JavaScript running unmodified Squeak images. Squeak is a modern implementation of Smalltalk, the original dynamic object-oriented programming environment. It runs bit-identically on virtually any platform, and now in the web browser, too.
Not sure I quite understand what this does, where does it store the changes you edit on the browser?