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

Nicolas Petton 94566fc507 Merge pull request #817 from herby/syntax-colouring 11 éve
bin 0e8a0e4c5b Moving things out of bin. 11 éve
cli 39300f4c1d fixes amberc.js for recent changes in master 11 éve
css 82863c0b89 Saner default font selection for Windows 11 éve
grunt a758127788 amberc.js: createDefaults() renamed to createDefaultConfiguration() 11 éve
images fb4335e4e5 helios: new package icon 11 éve
js 68e5695379 Setting smalltalk mode explicitly. 11 éve
st 68e5695379 Setting smalltalk mode explicitly. 11 éve
support a95a309a9e Setting the right shim dependencies to have syntax colouring 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 902047f83d Renames package 'Importer-Exporter' into 'Kernel-ImportExport' 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