So you'd like to contribute. Great! You can help by contributing code, or by adding organizations or projects to the database that you know could use help from volunteer programmers.
We have JSON files, organizations.json and projects.json, that are easily editable just for this purpose! By following the format of the data in those files, you can help by adding an organization or project yourself! They'll show up in the search list on the Code For All of Us website and be seen by volunteer programmers all around the world. If you can't edit JSON, you can also file an issue so we can add the organization or project to the database.
Contributing code is a great way to help our project grow. First you will need to have node.js and Python 3 and pip installed, then you can clone the project to get started. You may want to use a virtualenv to keep your Python dependencies contained in a local folder.
Clone the project and the submodule for its frontend files. One line will do it:
$ git clone --recursive https://github.com/CodeForAllOfUs/search-backend
Install all dependencies for the server:
$ cd search-backend
$ npm install
$ pip install -r requirements.txt
Install all dependencies for the frontend:
$ cd search-frontend
$ npm install
$ bower install
You'll need two console windows: one to run the Django server, and one to proxy it through node.js for livereloading. While inside of search-backend
, in one console window:
$ ./manage.py runserver 0.0.0.0:3000
Now run the proxy server, where you can connect for development (default port 9000). While inside of search-backend
, in the other console window:
$ gulp
Hooray! You're all set to start hacking.