Shard Detail

amberframework v0.1.0

Official website for Amber web application framework.

Install & Use

Add the following code to your project's shard.yml under:

dependencies to use in production
- OR -
development_dependencies to use in development

  github: amberframework/


Amber Framework Website

Official website for Amber web application framework.


Create a PG database called demo and configure the config/database.yml to provide the credentials to access the table.


shards install
amber migrate up


To run the demo:

crystal build src/

Front-end capabilities

Amber framework includes a minimal configuration to generate main.bundle.js and main.bundle.css using SCSS and JavaScript.

On development use:

npm install
npm run watch

To generate minified bundles for production execute:

npm install
npm run release

Docker and Docker Compose

This will start an instance of postgres, migrate the database, run the specs, and launch the site at http://localhost:3000

docker-compose up -d

To view the logs:

docker-compose logs -f

Note: The Docker images are compatible with Heroku.

SystemD Service

NOTE: root permission is required by some systemctl commands.


Copy iptables.service to /etc/systemd/system and enable it using systemctl enable iptables.service

The iptables service redirects port 80 to port 8080. This setting allows to use port 80 without root.

NOTE: Use sudo iptables -t nat -D PREROUTING 1 to delete redirect only if required


Open the file amberframework.service and edit these variables:


Then copy this file to /etc/systemd/system and reboot your machine or use systemctl daemon-reload to reload systemd services.

Service usage

To start amberframework service use:

NOTE: start is done automatically at system boot.

systemctl start amberframework

To stop amberframework service use:

systemctl stop amberframework

To see amberframework service status use:

systemctl status amberframework

To see amberframework service logs use:

journalctl -u amberframework


  1. Fork it ( )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request