== Setting up the environment Singleshot is developed against Rails 2.2. Make sure to have Rails 2.2.2 or later installed: gem update --system. gem install rails -v "~> 2.2" To get the latest copy use one of the following: svn checkout http://svn.apache.org/repos/asf/ode/sandbox/singleshot git svn clone http://svn.apache.org/repos/asf/ode/sandbox/singleshot git clone git://github.com/assaf/singleshot.git To setup you development environment, specifically installing all the necessary Gems and setting up the development and test databases, run the setup task: rake setup This will also create a default account using your user name and the password 'secret' To get started: rake run Point your browser to http://localhost:3000 and login with your user name and password. == Setting up the database The database is configured in config/databases.yml. The development and test database is set to use SQLite3, and the SQLite3 drive is installed when running rake setup. For production, you should consider using something else (the default configuration is MySQL). == Migrations Rails migrations are a great way to progress from one database schema version to another in production. Each major milestone or release will include a new set of migrations so production database can be updated by running rake db:migrate. Migrations are not used to move from one schema to another during daily development progress. The database schema will just change and you'll have to recreate the entire database. Those changes are recorded in the form of migration, but to update run: rake db:migrate:reset This task will recreate the entire development and test database. In addition, we uses the annotate-models Gems to, well, annotate the Rails models with the most recent database schema. So when changing the database schema, follow with: rake annotate_models To recreate the dummy data used for development: rake db:populate == Getting Involved The official specification for Singleshot is written using RSpec. Please use RSpec to specify the expected behavior and fill it up with test cases, from which we can build/fix/refactor the implementation. Documentation goes in the doc/pages directory, uses the Textile markup syntax, and is considered part of the source code and each official release. We use these files to generate the Web site and PDF documentation. A reference for Textile is available here: http://hobix.com/textile/