Amber is an implementation of the Smalltalk language that runs on top of the JavaScript runtime.

Herbert Vojčík 4f8cee7633 Helpers return vm and globals, are fake smalltalk for legacy loaders 11 éve
bin 6ac6af0098 change hashbangs from /bin/bash to /bin/sh 11 éve
cli 8c07550863 AmberCli recompiled 11 éve
css 82863c0b89 Saner default font selection for Windows 11 éve
grunt ff34eaf586 Parser now uses globals; exports itself to SmalltalkParser 11 éve
images fb4335e4e5 helios: new package icon 11 éve
js ff34eaf586 Parser now uses globals; exports itself to SmalltalkParser 11 éve
st ff34eaf586 Parser now uses globals; exports itself to SmalltalkParser 11 éve
support 4f8cee7633 Helpers return vm and globals, are fake smalltalk for legacy loaders 11 éve
test ad13afebeb recompiles Test.js 11 éve
.gitignore 5d1d304030 fix gitignore to take bower into account 11 éve
.travis.yml 83ae5502bb travis: node version 0.10 shows as 0.10 not as 0.1 11 éve
API-CHANGES.txt 0229140069 Update API-CHANGES.txt 11 éve
CHANGELOG 6624b0f660 Update CHANGELOG 11 éve
CONTRIBUTING.md b71a19e9ef Added "update API-CHANGES" to contributing guide 11 éve
Gruntfile.js ff34eaf586 Parser now uses globals; exports itself to SmalltalkParser 11 éve
LICENSE 4a3475c8b8 Updates the license 11 éve
README.md b99dc739d4 Update README.md 11 éve
RELEASING.md 47bf4a5d5b RELEASING.md: log in to npm 11 éve
bower.json 44bc1e247d Updates CodeMirror to version 3.20 11 éve
favicon.ico 8b43eb58f1 Add a favicon 11 éve
helios.html 9e61281a39 Fixes issue #752 11 éve
index.html 502c9372fb defaultAMDNamespace -> defaultAmdNamespace 11 éve
package.json b76b0cc2dc package.json: add es6-promise to dependencies 11 éve

README.md

Amber Travis CI Status

By Nicolas Petton petton.nicolas@gmail.com and Amber contributors

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.

Overview

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:

  • Amber features an IDE with a Class browser, Workspace, Transcript, a ReferencesBrowser supporting senders/implementors and class references, basic Inspector and even a beginning of a Debugger and a unit TestRunner.
  • Pharo Smalltalk is considered as the reference implementation.
  • Amber includes a canvas to generate HTML, like Seaside
  • Amber can use Javascript libraries and the current IDE is built on jQuery
  • You can inline Javascript code and there are many ways to interact between Amber and Javascript

Getting Amber

Amber is shipped as a npm package for its CLI tools and as a bower package for the client-side.

# Install the CLI tool `amber`
npm install -g amber

# Load amber via bower in your project
bower install amber

# Serve amber on localhost:4000
amber serve

The Getting started page shows more details on ways to obtain Amber and start a project.

Building Amber

This step is only used by people developing Amber itself. Please refer to CONTRIBUTING.md for further details. It explains the Amber development setup and how to contribute.

License

Amber is released under the MIT license. All contributions made for inclusion are considered to be under MIT.

More infos

More on the project page