You can try SqueakJS right now: Mini Squeak is a very stripped-down but fast version, or the full-blown Etoys and Scratch applications. Also interesting might be the Lively Squeak debugging interface I use to develop SqueakJS. You can also run the automated Benchmarks on your machine.
Contributions are very welcome! Please report issues in the bug tracker. For discussion on how to use SqueakJS in your own project please use the Squeak mailing list. SqueakJS implementation details are better discussed on the vm-dev mailing list.
-- Bert Freudenberg
July 2016 SqueakJS 0.9 released: Spur images can be loaded and stored. Fabio Niephaus contributed networking support for http and https connections making e.g. Monticello work. Images can now be passed in a zip file, so we can link to archives directly (e.g. Squeak 5.0). This also required CORS proxy support (shout out to Connor Hudson at crossorigin.me).
January 2016 SqueakJS 0.8 released: fixes
November 2014 SqueakJS 0.6 released: Generate plugins from Slang code. Support file templates, and passing arguments via URL.
October 2014 SqueakJS 0.5 released: Adds a simple, fast-compiling, non-optimizing JIT compiler. Makes it quite a bit faster, but at the expense of memory (mobile devices may be better off without it).
September 2014 SqueakJS 0.4 released: Supports event-based input, and many older primitives. Can run Scratch, and the oldest Squeak 1.1 image.
August 2014 SqueakJS 0.3 released: Adds closure support, and full-screen. Runs a current Squeak image (4.5).
July 2014 SqueakJS 0.2 released: Has file support and WarpBlt. Can run an Etoys image now, and includes the beginnings of a Balloon plugin to make TrueType fonts work.
April 2014: Here's what Dan and I have been working on: Resurrecting Smalltalk-78. The VM is based on SqueakJS. I will start porting many improvements back to here.
January 2014 Need to stop working on SqueakJS for a while—but this VM tech will be put to good use, promise!
December 2013 Release 0.1: Runs mini.image successfully.