Skip to content
G0dwin edited this page Sep 14, 2014 · 5 revisions

Welcome to the BikeBike wiki!

Install Prerequsits: Ruby 2.0, Rails 4.0, git, PostgreSQL, PhantomJS

Windows

  1. Visit http://railsinstaller.org/en
  2. Download RailsInstaller 3.0 (here)
  3. You can optionally download a Git GUI client such as GitHub for Windows

Mac

Do your best to get them installed then write out what you did here.

Linux

Setup your Postgres Database

  1. Go to http://www.postgresql.org/download/
  2. Download and install the appropriate version
  3. PGAdmin is not necessary but recommended, if your download does not include it and it is available for your operating system you may want to install it to make your life a little easier if you're not a command line junky.
  4. Create your username and set a password
  • From the terminal: create a postgres user (with db create permissions but no user create permissions):

        sudo -u postgres createuser -d -A -P username
    

Get a Code Editor

If you don't already have one that you like here's a few recommendations.

  1. [Sublime Text] (http://www.sublimetext.com/): Probably the most popular tool used by Rails developers, lightweight and easy to set up.
  2. [Atom] (https://atom.io/): A brand new editor with a lot of potential.
  3. [Eclipse] (https://www.eclipse.org/): Traditional Java editor but there's some good plugins for editing Ruby and Rails.
  4. [Notepad] (http://www.notepad.org/): Just don't, please.

Install some other project dependencies

  1. [PhantomJS] (http://phantomjs.org/download.html): required for cucumber tests. For windows users, you'll need to download the zip file and extract phantomjs.exe to somewhere available to the path, a good place might be Root:\RailsInstaller\Ruby2.0.0\bin\.
  2. [NodeJS] (http://nodejs.org/): required for cucumber tests.

Get the Code

Setup the Server

  1. Open up your command line. For windows you can use Command Prompt but Powershell is recommended.

  2. Navigate to the base folder of your code (cd C:\Code\BikeBike\, cd /home/workspaces/bikebike or whatever)

  3. Install all required gems:

     bundle install
    
  4. Make a copy of /config/database.yml.example as /config/database.yml and edit the file. Change the usernames and passwords (and anything else you need/like) to match the settings in your database. Then create the database:

     rake db:create
    

    After this, you need to execute the pending database migrations:

     rake db:migrate
    

    You should only need to create the database once, however you will need to remember how to run migrations every time you pull down new code or create a new model.

Run the tests

Remember this command, you'll need to run it often.

rake cucumber

Run the server:

rails server

You should now be able to see the site at http://localhost:3000

Setup your hosts

This step is not necessary but will allow you to see the site at an address other than http://localhost so that you can see the site in other languages for instance.

Windows

Open your hosts file, you should be able to find it at C:\Windows\System32\drivers\etc\hosts. To make dev.bikebike.org point to your localhost for example, add the line:

127.0.0.1    dev.bikebike.org

Now you should be able to visit http://dev.bikebike.org:3000 and see the same page as you saw at http://localhost:3000.

Get Your Permissions Set

Contact any collaborators (@G0dwin should always be available) to get on the following.

Become a Collaborator

Becoming a collaborator enables you to push code changes to github.

Get on The Trello Board

We use Trello for managing non-issue tasks.

Document Your Experience

If you experienced something different than the above, let others know by updating this page. Continue to help others by editing or creating other wiki pages.

Become Familiar with Our Practices

Read about our github workflow, organizational practices, and testing and coding standards. Ask questions, add to the documentation and suggest changes if you think you can make improvements.

Find Something to Do and Do It

Look through the issues and see what you feel like taking on, you can also look through the Trello cards if nothing there suits your fancy. If you have ideas which are not included in the above you can start a discussion or simply start developing a new Gem Abstraction. Of course, high priority issues and tasks would be of much higher value than creating new code, however you need to use your time as you feel will give back to the project and yourself the most.

Make some changes and commit that code (following our github workflow of course).