Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

bulk_api working for simple Todo app

branch: master

Fetching latest commit…


Cannot retrieve the latest commit at this time

Octocat-spinner-32 app
Octocat-spinner-32 config
Octocat-spinner-32 db
Octocat-spinner-32 doc
Octocat-spinner-32 lib
Octocat-spinner-32 public
Octocat-spinner-32 script
Octocat-spinner-32 test
Octocat-spinner-32 vendor
Octocat-spinner-32 .gitignore
Octocat-spinner-32 .gitmodules
Octocat-spinner-32 Gemfile
Octocat-spinner-32 Gemfile.lock
Octocat-spinner-32 Rakefile

Demo of SproutCore and bulk_api for Rails

bulk_api is a Rails engine to bulk access a user's resources via an API.

It provides SproutCore integration via a custom DataSource. As a result, a SproutCore application can quickly get all the relevant backend data into the client-side SproutCore front end.

This is a demo application (the todo example from the SproutCore Guides) integrated with a Rails app. The Rails app has a single Todo model. The integration between SproutCore and Rails is via the /api/bulk route used by bulk_api.

There is a guide to building this application.


git clone
cd todos-bulk-api-demo
git submodule update --init
rake db:migrate
rails s

Open http://localhost:3000/_sproutcore/todos in a browser. Add todo items, finish them, close the browser and revisit it.

SHAZAM! The data is still there.

What's missing?

There is no User model and no authentication. bulk_api supports this, but the current example does not.

Behind the scenes

Want to see the example data in your database from SproutCore's perspective?

curl http://localhost:3000/api/bulk?todos=all


Seriously? It's example code.

Seriously. Ok, MIT license.

Something went wrong with that request. Please try again.