Switch branches/tags
Nothing to show
Find file History
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
part2 Reorganizing directories May 3, 2012


Backbone.js Wine Cellar Tutorial

"Backbone Cellar" is a sample Backbone.js application. The application allows you to browse through a list of wines, as well as add, update, and delete wines.

"Backbone Cellar" is the application used in the four-part tutorial posted here: part 1, part 2, part 3, part 4.

If you just want to look at the final version of the application, look in the final directory.

You can also follow the tutorial and build the application step by step:

  • In Part 1 (doc - code), you define the basic infrastructure. You create a “read-only” version of the application: you’ll be able to retrieve a list of wine and get the details of each wine.
  • In Part 2 (doc - code), you add the code to add, update and delete wines. You leverage Backbone’s powerful REST integration.
  • In Part 3 (doc - code), you add complete support for history management and deep linking.
  • In Part 4 (doc - code), you load templates asynchronously and implement a few best practices.

The UI is intentionally plain to keep the focus on the architecture of the application.

Set Up:

  1. Create a MySQL database name "cellar".

  2. Execute cellar.sql to create and populate the "wine" table:

    mysql cellar -uroot < cellar.sql


The application is available with a PHP or Java services:

  • The PHP services are available in the api directory of this repository. The RESTful services are implemented in PHP using the Slim framework (also included in the api directory).
  • The Java back-end is available in this repository. The RESTful services are implemented in Java using JAX-RS.

Your feedback is appreciated. Please post your questions and comments in the blog posts referenced above.