Skip to content
Andreas edited this page Sep 1, 2015 · 5 revisions

Welcome to the contributr wiki!

contributr

contributr is an online tool used to help programmers find repositories on GitHub they'd like to contibute to based on languages, frameworks, and interests.

How does this work?

Logging into contributr with your GitHub account as well as utilizing GitHub's Search API, you will be searching for projects based the whatever search criteria you have chosen; whether it be a specific language, framework, or any other interests you may have.

Foundation

contributr is built with Python, but to be more specific, Django (web framework).

About Djenesis

The group which has brought you contributr. A group formed through a post on reddit which sought out like-minded programmers who were willing to join in and help build a web-application using Django (web framework) while learning all that we do and use in the process. Between reading documentation in our free time to help build contributr and sharing the knowledge we already have with each other, no matter what, we continue to learn and teach ourselves new things!

How to contribute?

First of all, you should fork the repo. After that, to join our slack group, head on over to here and input your email. You'll receive an invitation to join the slack group at slack.

Install

Clone the repository you just forked via the Github or any git client, or use the following command -

$ git clone https://github.com/<your github id>/contributr.git

Make a virtual environment (strongly recommended!) virtualenv virtualenvwrapper

# use whatever python3 version you want to use, we use python 3.3 and 3.4
# if using virtualenv
$ python3 -m venv contributr
$ source contributr/bin/activate
# if using virtualenvwrapper
$ mkvirtualenv <name>
$ workon <name>
# after finishing work
$ deactivate

Install development requirements

$ pip install -r requirements/requirements_dev.txt
# if you have virtual env set up, use pip-sync from pip-tools instead
$ pip-sync requirements/requirements_dev.txt

Install testing requirements (if you're running tests)

$ pip install -r requirements/requirements_test.txt
# if you have virtual env set up, use pip-sync from pip-tools instead
$ pip-sync requirements/requirements_test.txt

Set environment variable SECRET_KEY
Copy this to your shell or environment config: .bash_profile, .bashrc For windows: put the SECRET_KEY variable in your environment variables

export SECRET_KEY="change_this_to_something_secret"

Running the project the first time: Make sure your DBMS is setup, and is running The username and password settings are correct (check the settings files)

$ python manage.py migrate
# required for admin -> superuser
$ python manage.py createsuperuser
# starts the server on localhost:8000
$ python manage.py runserver

Testing

$ cd contributr
$ python3 -m pytest

If you run into some problem, difficulty, bug or have an idea about bug-fixes and features, please join us at our slack group.