-
Please familiarize yourself with GIT:
Git - Github Flow - https://guides.github.com/introduction/flow/index.html Git - How to 'fork' a repo - https://help.github.com/articles/fork-a-repo/ Git - How to create a new 'branch' - https://help.github.com/articles/creating-and-deleting-branches-within-your-repository/#creating-a-branch Git - Pulling a branch - https://help.github.com/articles/creating-and-deleting-branches-within-your-repository/#creating-a-branch Git - Merge - http://git-scm.com/docs/git-merge
-
For OSX Yosemite (Ubuntu users, you’re on your own), this assumes you’ve set up git, so if you haven’t go do that.
-
After install iterm2, or opening your terminal window, install Homebrew and RVM
Homebrew: ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" RVM: brew install gnupg gnupg2 gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 \curl -sSL https://get.rvm.io | bash -s stable --ruby Follow instructions in terminal to source
-
Next install and start PostgreSQL
brew update brew doctor brew install postgres pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
-
Time to install and start redis:
brew install redis
-
Using git clone the repository to whatever directory you choose
-
Change into that directory and install the applications dependencies
cd ~/the/directory/you/chose (pro tip, hit tab when using the terminal to autocomplete paths) bundle install
-
Create and update database structure
rake db:create ; rake db:migrate Note: If there are errors, look for a file name, (e.g. - /Users/yourusername/Documents/voluntr_api/db/migrate/20150406145707_add_organization_id_to_person_opportunity_recorded_hours.rb) and erase the file.
-
Start resque
rake resque:work QUEUE='*' INTERVAL=0.5
-
Install and Start Elasticsearch
brew install Caskroom/cask/java brew install elasticsearch ln -sfv /usr/local/opt/elasticsearch/*.plist ~/Library/LaunchAgents launchctl load ~/Library/LaunchAgents/homebrew.mxcl.elasticsearch.plist
-
Get the front end framework situated
NPM - Click download button at https://nodejs.org/ Dependencies - In application root directory, 'cd front_end', then npm install Yeoman - 'sudo npm install -g yo' Grunt - 'sudo npm install -g grunt-cli' Bower - 'sudo npm install -g bower' Compass - 'gem install compass'
-
Try and start the front end server (grunt serve) if you get an error, rollback event emitter:
cd node_modules/grunt-connect-proxy/node_modules/http-proxy/ npm install [email protected]
-
Install bower dependencies
In front end directory: "bower install"
-
Then install Ruby and Rails
rvm install 2.1.2 --default
-
Starting Application
in the root directoy - rails s
-
Additional Resources
-
Scroll Effects for HTML Elements
-
We use angular scroll watch (github.com/pc035860/angular-scroll-watch) to handle effects and actions triggered by scrolling. Here is a gist with an example of how this is used, the repo also has countless examples and information: gist.github.com/Newbsylberry/4df0412ea48d637e0a00