For the National Day of Civic Hacking 2013.
What Is It?
It's an open source webapp to help the Iowa City Animal Center increase their adoption rate. (Cats in particular don't get adopted as often as dogs, for example.)
It will be a simple app that allows images of animals up for adoption to be easy to caption, kind of like on the Cheezburger sites. The idea is that people can make funny captions for adoptable cats and dogs, share them on Twitter/Facebook, and hopefully get a lot more people considering adopting these animals.
We're happy to hear you'd like to help out! There are issues organized by milestone and labelled with difficulty (most are "easy") and technologies you need to know (such as "html", "js", or "ruby"). There's a mockup in the wiki.
A quick crash course for designers and web developers unfamiliar with Rails:
- Templates are stored in
app/viewsand are essentially HTML, plus some ERB tags (
<% code %>,
<%= value %>).
This is an app that can run on Heroku, so if you already have Git, Ruby, and PostgreSQL on Linux or OSX, you're probably in fine shape.
If you want to use a reproducible, Heroku-like development environment, you can use Vagrant to get set up. It will set up a virtual machine that is known to work with this application. (Run into problems? Vagrant makes it easy to destroy and recreate your development environment, if necessary.)
- Install Git or a GitHub client
- Clone this repository
- Install VirtualBox
- Install the newest version of Vagrant
The following commands may each take a little while to complete.
Within your clone:
vagrant up vagrant ssh
Now you are SSHed into your guest Vagrant virtual machine. Now you can run these commands:
cd /vagrant bundle install rake db:create rake db:schema:load
Not using Vagrant? The steps above are stil basically what you need to do, but without the Vagrant specific parts:
bundle install # configure config/database.yml by hand bundle exec rake db:create bundle exec rake db:schema:load
Now the automated tests should pass:
bundle exec rake
So now you can run the app:
bundle exec rails server
And open it in your browser: http://localhost:3000/
At this point, you can make changes to the code to your heart's content. Happy hacking!
- Fork the project.
- Make your feature addition or bug fix. Please follow the style recommendations (see above).
- Add specs for your changes, if you are able. This is important so we don't break it in a future version unintentionally.
- Open a pull request. Bonus points for topic branches (see
Thanks for your contributions!
Ruby code should generally follow the community Ruby Style guide. If you're writing tests,
rspec is recommended.
Git Flow is recommended, but not required. The development branch is
master and the release branch is
GPLv2. See LICENSE for a copy.