Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Clone in Desktop Download ZIP

How does it work?

Kavya Sukumar edited this page · 3 revisions

Autotune is built with Ruby on Rails and distributed as a Rails Engine.

The Rails app handles storing stuff in a database, running shell commands against blueprints and projects and presenting a JSON API. The front-end is a javascript app built using Backbone.js, Bootstrap and Alpaca.js.

Process flow

When a blueprint is added to Autotune, Autotune clones the git repository.

When a user creates a new project from the blueprint, Autotune reads the form description from autotune-config.json and passes it to Alpaca.js to create a project form.

Once the project is saved, Autotune runs a build command in a shell, passing along all the project data. It is up to the blueprint to handle the incoming data and generate a folder full of static html and assets. This folder is then deployed to a configurable destination.

All of these shell operations are performed in asynchronous jobs, so the front-end can stay responsive and build scripts can take as much time as they need to complete. The job scheduling is done using resque and redis.

Something went wrong with that request. Please try again.