Getting Started
Quick Start
This quick start guide will help you get a full stack web application running in just a few minutes by leveraging amber’s code generators.
It will take us just 7 steps. Let’s get started!

1. Install dependencies
1.1 Install crystal
and amber
crystal
and amber
Instructions for OS X using Homebrew or MacPorts and Debian/Ubuntu are below. See full installation instructions here for RedHat & CentOS, ArchLinux & Derivatives, and more complete instructions.
macOS
Installing Amber with these package managers also installs Crystal.
Homebrew
brew tap amberframework/amber brew install amber
MacPorts
sudo port selfupdate sudo port install amber
Ubuntu or Debian
First install crystal (from the official install documentation):
curl -fsSL https://crystal-lang.org/install.sh | sudo bash
Then install Amber (from source)
NOTE: At the time of this writing, v1.4.1 is the current stable release, but you should use the most recent tag in place of that.
sudo apt-get install libreadline-dev libsqlite3-dev libpq-dev libmysqlclient-dev libssl-dev libyaml-dev libpcre3-dev libevent-dev
git clone https://github.com/amberframework/amber.git
cd amber
git checkout v1.4.1
shards install
make
sudo make install
You can also install Amber with Linuxbrew
brew tap amberframework/amber
brew install amber
1.2 Install a database
Amber works with postgresql
(default), mysql
, or sqlite
.
If you don’t already have one of these installed, please follow the guides provided by each database maintainer:
2. Generate a new Amber application
With all dependencies successfully installed, we can generate a new application with amber new
After the code for the new application is generated, we will cd
into the new directory and execute a shards install
.
The shards install command may take a little while - it has to download all shard dependencies.
amber new pet-tracker
cd pet-tracker
3. Generate a resource
With the skeleton application generated, we can generate our first RESTful resource.
The amber generate scaffold
command will help us do this.
amber g scaffold Pet name:string breed:string age:integer
4. Create and migrate the database
Generating the application and the scaffolded resource provides the configuration and migration files needed to set up the database.
amber db
will help us do this, as you will see you can chain the db
commands together.
amber db create migrate
This will create a new database and run the migration to create a pets
table with the specified columns.
5. Build the application and run the server
We can use amber watch
to both build the binary application and start the server. Additionally, amber watch
will detect code changes then recompile and restart the application automatically.
amber watch
The watch
commands will keep observing for file changes within the project and recompiling the application.
6. Use your brand new web application!
Open any browser and goto http://localhost:3000 You should see a home page load and “Pets” in the nav bar. If you click on the “Pets” link, you should be able to perform all seven RESTful actions for the “pets” resource.
7. Deploy your web application
DeploymentList of Commands
You can use these commands to create new awesome applications :-)
amber new pet-tracker
cd pet-tracker
shards install
amber generate scaffold Pet name:string breed:string age:integer
amber db create migrate
amber watch
Demo
Here is the Quick Start demo app and the source code is available on Github.

Last updated