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

Herbert Vojčík 805b58ab0f Merge branch '0.13' into up 10 éve
external 2189a1f0cd Release version 0.1.4. 10 éve
internal 4b69460853 config.js running in both pre- and post-require.js 10 éve
src 447fea0cf0 Working on 0.13.0 10 éve
support 949a2ae018 Loading of Helios with qs-passed baseUrl 10 éve
.gitignore 05aa47051d Clean .gitignore. 10 éve
.npmignore c6aa7f4134 Getting things for developers _of Amber_ out of root. 10 éve
.travis.yml fa7e161828 travis.yml: adding 'npm install' to install key 10 éve
API-CHANGES.txt 8caffd25c9 API-CHANGES: isTestXxx 10 éve
CHANGELOG 468fe71081 Changelog updated. 10 éve
CONTRIBUTING.md 0efe3ad099 CONTRIBUTING: Parts of repo 10 éve
Gruntfile.js 468c5b8c30 Integrating externals into index.html and Gruntfile 10 éve
LICENSE 4a3475c8b8 Updates the license 10 éve
README.md a7884d82ec Update README.md 10 éve
bower.json 447fea0cf0 Working on 0.13.0 10 éve
codemirror.amd.json 6423ce2ea7 Added .amd.json files 10 éve
config.js f3328a3660 New style config.js usable in r.js optimizer 10 éve
es5-shim.amd.json 6423ce2ea7 Added .amd.json files 10 éve
favicon.ico 8b43eb58f1 Add a favicon 11 éve
jquery-tabby.amd.json 6423ce2ea7 Added .amd.json files 10 éve
jquery-ui.amd.json e776e0f4fc Incorporated changes from a0d74fd. 10 éve
jquery.amd.json c6e8778456 Incorporated changes from c9d23e8. 10 éve
local.amd.json 6423ce2ea7 Added .amd.json files 10 éve
package.json 447fea0cf0 Working on 0.13.0 10 éve
require-css.amd.json 6423ce2ea7 Added .amd.json files 10 é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. For installation to work, you need to install node, npm and git (in Windows, use Git for Windows and select "Run Git from Windows Command Prompt" and "Checkout Windows-style, commit Unix-style" installation options).

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

# Initialize your project (directory must be empty)
cd /path/to/myproject
amber init

# 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