This is the repository for the website for Code for Tucson, the Tucson chapter of the Code for America Brigade program. It is based on the website for Code for DC.
This site is built on Github Pages, which uses Jekyll as a templating language.
##Dependencies
###RVM Gemset [Recommended]
# Install Ruby 2.0.0
$ rvm install 2.0.0
# Create and use the Code for Tucson Gemset
$ rvm use 2.0.0@codefortucson --create
# Install the dependencies
$ bundle install
###Manual Install [Not supported]
We depend on a few Ruby gems:
You should be able to install them via RubyGems:
$ gem install jekyll kramdown sass
If you want more information on getting started with Ruby development, STOP RIGHT THERE. Use RVM instead. If you're still using Ruby in 6 months, you'll thank us profusely.
##Hacking
###Update the configuration files
Look for the url
key in _config.yml
. Uncomment the local development line before starting local development, and please remember to comment it back out before submitting pull requests.
Look for the $site-baseurl
variable in assets/_sass/_custom.scss
.
###Run jekyll
If you are using RVM, make sure you are using the correct Gemset!
$ rvm use 2.0.0@codefortucson
Start the local web server
$ jekyll serve -b '' -w
You should now be able to visit http://localhost:4000/ in your browser and see a copy of the Code for Tucson site hosted on your very own computer that updates when you save something! Zoiks!
###To make changes:
- You should set up a fork of the site and test your changes there before submitting a pull request.
- Please work against the
master
branch.master == staging
. - The production website is hosted off of the
gh-pages
branch. You shouldn't work against this, but when you have publication-ready changes inmaster
, you can pull those across togh-pages
to make them live. This enables people to work against a sharedmaster
branch without needing to ensure production-ready commits. - If you have questions about contributing to an upstream repository with Github's fork workflow, read more on forking repos and syncing forks.