WYSIWYG web-based XForms editor for the ODK subset
JavaScript Ruby
Switch branches/tags
Nothing to show
Clone or download
Pull request Compare This branch is 12 commits ahead, 318 commits behind opendatakit:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
docs
lib
model
public
test
views
.gitignore
Gemfile
Gemfile.lock
README.textile
Rakefile
config.ru
config.yml.sample
config_manager.rb
odkbuild_server.rb
warden_odkbuild.rb

README.textile

odkbuild — wysiwyg web-based xforms editor for the odk subset

Usage

odkbuild (formerly odkmaker) is a web-based service. Unless you mean to do development on it, just go to http://build.opendatakit.org to give it a try.

Development

odkbuild is a Ruby Rack-based application. Everything it needs is kicked off by the config.ru Rackup file. We use shotgun for local development and Phusion Passenger for staging and production deployment.

Dependencies

The project has one native dependency: Tokyo Cabinet. We use this as our datastore. You’ll have to build it natively for any system you want to run the server on. See http://fallabs.com/tokyocabinet/ for details.

Once you have that, all Rubygem dependencies are managed by Ruby Bundler. Make sure you have at least version 1.0.0 of Bundler installed (gem update --system && gem install bundler if you don’t have it already), and then simply run bundle install in the application root to resolve and install the appropriate dependencies.

Setup and Execution

Now that you have resolved all the appropriate dependencies, you’ll need to set up the configuration by copying config.yml.sample to config.yml. This file contains a number of secret keys and tokens, so be sure not to check it into source control once you put your own keys into it. Finally, you’ll want to run rackup config.ru to start the server, or shotgun config.ru if you want the application to automatically detect your changes to source code and load them up when you refresh the app in your web browser.