|  | %!s(int64=14) %!d(string=hai) anos | |
|---|---|---|
| bin | %!s(int64=14) %!d(string=hai) anos | |
| css | %!s(int64=14) %!d(string=hai) anos | |
| examples | %!s(int64=14) %!d(string=hai) anos | |
| ide | %!s(int64=14) %!d(string=hai) anos | |
| images | %!s(int64=14) %!d(string=hai) anos | |
| js | %!s(int64=14) %!d(string=hai) anos | |
| repl | %!s(int64=14) %!d(string=hai) anos | |
| server | %!s(int64=14) %!d(string=hai) anos | |
| st | %!s(int64=14) %!d(string=hai) anos | |
| .gitignore | %!s(int64=14) %!d(string=hai) anos | |
| CHANGELOG | %!s(int64=14) %!d(string=hai) anos | |
| LICENSE | %!s(int64=14) %!d(string=hai) anos | |
| Makefile | %!s(int64=14) %!d(string=hai) anos | |
| README.md | %!s(int64=14) %!d(string=hai) anos | |
| favicon.ico | %!s(int64=14) %!d(string=hai) anos | |
| index.html | %!s(int64=14) %!d(string=hai) anos | 
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