A new language and live environment made for the web.

The Amber language is deeply inspired by Smalltalk. It is designed to make client-side development faster and easier. Amber includes a live development environment with a class browser, workspace, unit test runner, transcript, object inspector and debugger.

Amber is written in itself, including the compiler, and compiles into efficient JavaScript, mapping one-to-one with the JS equivalent.

Click around. Don't worry about making a mess or breaking anything, just have fun!

Amber...

So...What is it about again?

Amber is a language (derived from Smalltalk) and environment built for the web.

With Amber, client-side web development finally gets the power and productivity that exists in other Smalltalk dialects.

Why should I care?

Having a true live & incremental development environment where you can build your application interactively in the browser is unbeatable.

Why a Smalltalk dialect?

Smalltalk stands head and shoulders above most other languages for clarity, conciseness, and human-friendliness.

As a language, it is immensely clean and mature, both syntactically and semantically. It is a pure OO language, with objects all the way down.

But what about all the JS ecosystem?

Amber plays very well with the outer world. You can interact with JavaScript objects seamlessly, and even inspect them as any Amber object.

Evaluating JavaScript object methods is transparent and makes using libraries a breeze.

Quick links
You can read the documentation online. The Wiki on GitHub includes a Getting started tutorial for OSX, Linux and Windows.

Client-side usage

Load the full Amber Smalltalk environment with the IDE in your page:

<script src="js/amber.js" type="text/javascript"></script>
<script type="text/javascript"> loadAmber()</script>

Or the deployment JavaScript file only (without the Smalltalk sources, parser, compiler and IDE):

<script src="js/amber.js" type="text/javascript"></script>
<script type="text/javascript"> loadAmber({deploy: true})</script>

Read the documentation to learn more about writing applications in Amber.

Get involved!

Contributing to the project

In a sharing mood? Contributions to Amber are very much welcome!

  • The Amber source code is hosted on Github. You can fork the main repository and send pull requests.
  • The contributions page lists some possible contributions that which contributors might "adopt" and realize.
  • You can also submit issues on the bug tracker.

Meet the people behind Amber

  • Most of Amber discussion and help happens on the Google Group.
  • Amber hackers can be found on the #amber-lang IRC channel on freenode. You can use the Freenode web client.

Download

You can get a copy of Amber from github or clone the git repository.