This open source project is to help manage Rails Girls events, including application forms, participant selection and event information.
Since Rails Girls workshops are all about getting excited and making things, we decided to make something useful for us that could be contributed to by other Rails Girls and Rails Girls enthusiasts.
In 2012, we held two Rails Girls workshops in Washington, DC (USA) and in organizing those events, we realized that we could build an app to make the participant selection process easier than the spreadsheet and manual process we were using. We wanted help to keep track of applications, and guide the process of scoring them, keeping track of who shows up - a back-office system.
Then we realized it would be awesome to have a social network to connect all of the Rails Girls people (participants, coaches, sponsors, volunteers) before and after the event, as well as resources and opportunities/deals to continue their education.
###GitHub Help
- If you are brand new to GitHub work through try.github.com
- Fork the repo from Tapangi/rgmanager. This will copy the application from user "Tapangi" to your GitHub account.
- Clone the applicatino from YOUR Github/rgmanager location to your machine instructions. The reason you work from your account and on your machine is so that changes you make are only committed to the main repository once you're satisfied with the results.
- Create an UpStream from the main repo (Tapangi) this will allow you to pull in any changes that occur on the main repository as your working on your project.
- to do this, in your terminal run
remote add upstream https://github.com/tapangi/rgmanager.git
###Running the application on your computer
- Once you have forked and cloned the application onto your computer you need to set up the Postgres database
- For MACS:
- Go to postgresapp.com and download the app. For Windows:
- Go to EnterpriseDB and download the correct app.
- Once installed go to your terminal and run
psql -h localhost
you should see something like this:psql (9.2.2) Type "help" for help. Computer_Name=#
- This means you're in the Postgres shell and can run commands to create databases.
- Run these commands to create your databases:
createuser rgmanager createdb -Orgmanager -Eutf8 rgmanager_development createdb -Orgmanager -Eutf8 rgmanager_test
- leave this terminal window open and open a new one (apple key + t) this should bring up a terminal window that is still located in the rgmanager directory. Run
rake db:migrate db:seed
- leave this terminal window open and open a new one (apple key + t) this should bring up a terminal window that is still located in the rgmanager directory. Run
- Congrats you're databases are ready to go! You can now run
rails s
in same same terminal window you just ran the rake commend. You should see something like this:
WARNING: Nokogiri was built against LibXML version 2.7.3, but has dynamically loaded 2.7.8
=> Booting WEBrick
=> Rails 3.2.11 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2013-02-25 15:00:22] INFO WEBrick 1.3.1
[2013-02-25 15:00:22] INFO ruby 1.9.3 (2012-11-10) [x86_64-darwin12.2.1]
[2013-02-25 15:00:22] INFO WEBrick::HTTPServer#start: pid=00000 port=3000
- In your browser type in "localhost:3000" and the app should appear!
We've done the hard part for you and prioritized issues that need attention. All the featuers that need to be built are listed in our feature tracker page.
We will not list any issues in the feature tracker page that do not need immediate attention, so feel free to tackle any of the issues!
###How will I know and other people know what issues are being worked on? We hope to have a lot of different people contributing to RGManager, however, this could cause some confusion as not everyone will know if someone is already working on the issue they want to tackle.
For now we're keeping track of issues and who is working on them via the RGManager Github Issue Page.
If there is a feature you want to work on listed in the feature tracker page see if the issue is listed on our RGManager Github Issue Page. If so, read the comments for the issue and if you think you can work on the issue leave a comment with what you're planning to contribute then start working. If you want to work on a feature that is not yet listed on the RGManager Github Issue Page you can create the issue.
When creating issues in RGManager GitHub try to be a descriptive as possible as to what you want to do and what the outcome should be so others can understand and follow along.
When you have settled on what issue you're going to work on from the RGManager GitHub issue page you can follow these steps:
- Go to your account page for RGManager and create a new branch. The new branch should be the same as the issue number you want to work on ie: Issue_19, Issue_30 etc.
###Proposing an idea/feature
For now we ask that you email us at [email protected] and include "RG Manager: idea" in the subject. We'll send you a confirmation email that we've received your idea and let you know when it's posted to the feature tracker page.
###Application User Roles:
- Applicant
- Participant (applicant, selected and attended)
- Organizer
- Coach (applicant, invited and coached)
- Sponsor (offered and committed)
- Volunteer (including Speakers)
- Network Member (can be any other user role and network member, or just network member)
###Networks and Events: Networks - help build local communities and provide greater visibility into other communities, we thought of introducing a concept of a Network. A network is essentially a group of people in a particular city that is associated with Rails Girls events.
Events - localized, physical workshops, are organized by people that belong to a Network (ie. Washington, DC). Users/members of the Rails Girls community could belong to multiple networks, not just one. They could be members of a network or admins/organizers, which among other things would allow them to create and schedule Events.
Thanks for contributing to this open source project and helping make Rails Girls awesome!
If you have questions about RG Manager or Rails Girls shoot us an email at [email protected] or catch us on Twitter @RailsGirlsDC
You can also come to our meetups and contribute in person: Rails Girls DC Meetup Info