By Nicolas Petton petton.nicolas@gmail.com
Amber is an implementation of the Smalltalk language that runs on top of the JavaScript runtime. It is designed to make client-side development faster and easier.
Amber is written in itself, including the parser and compiler. Amber compiles into efficient JavaScript, mapping one-to-one with the equivalent JavaScript. There is no interpretation at runtime.
Some highlights:
The Amber class browser is able to commit changes to disk. The "commit category" button will send a PUT request with the JS code of all classes in the selected class category in a file named js/CATEGORY.js and also send the corresponding .st files to the st directory.
The easiest way to enable committing is probably to use the nodejs server or to setup a webdav with Apache.
To start the local server:
./bin/server
then go to http://localhost:4000
The following steps explain how to setup a webdav for Amber with Debian, but the setup on OSX and other Linux distros should be similar.
apt-get install apache2
a2enmod dav
a2enmod dav_fs
htpasswd -c /etc/apache2/htpasswd-webdav USERNAME
Add the following lines to the default vhost (in /etc/apache2/sites-available/default):
Alias /amber/ "/path/to/amber/"
<Directory "/path/to/amber/">
Options Indexes MultiViews FollowSymLinks
DirectoryIndex index.html
AllowOverride None
Order allow,deny
allow from all
Dav on
AuthType Basic
AuthName "amber"
AuthUserFile /etc/apache2/htpasswd-webdav
<LimitExcept GET OPTIONS>
Require valid-user
</LimitExcept>
</Directory>
Make sure the group www-data has required rights to modify files in the webdav directory.
/etc/init.d/apache2 restart
Amber is released under the MIT license. All contributions made for inclusion are considered to be under MIT.
More on the project page