Systers Portal is for Systers communities to post and share information within and with other communities.
Website: http://portal.systers.org
Project page: http://systers.github.io/portal/
- Make sure you have installed Python 2.7 or above (preferably latest minor release), pip and virtualenv.
- Make sure you have PostgreSQL installed.
- Clone the repo -
git clone git@github.com:systers/portal.git
and cd into theportal
directory. - Create a virtual environment and install dependencies:
$ virtualenv venv
$ source venv/bin/activate
$ pip install -r requirements/dev.txt
- Create
systersdb
database, wheresystersdb
might be any suitable name. - Fill in the database details in
systers_portal/settings/dev.py
. - Run
export SECRET_KEY=foobarbaz
in your terminal, ideally the secret key should be 40 characters long, unique and unpredictable. Optionally to set the shell variable every time you activate the virtualenv, editvenv/bin/activate
and add to the bottom the export statement. - Run
python systers_portal/manage.py migrate
. - Run
python systers_portal/manage.py createsuperuser
to create a superuser for the admin panel. Fill in the details asked. - Run
python systers_portal/manage.py runserver
to start the development server. When in testing or production, feed the respective settings file from the command line, e.g. for
testingpython manage.py runserver --settings=systers_portal.settings.testing
. - Before commiting run
flake8 systers_portal
and fix PEP8 warnings. - Run
python systers_portal/manage.py test --settings=systers_portal.settings.testing
to run all the tests.
If you want to take a speak peek at Systers Portal, a Docker container is for you. The following Docker is not intended to be run in production at the moment (but might be configured to do so in the future).
- Install Docker on your system. Check the installation steps for your specific OS. Docker runs natively on Linux-based system. For Windows and Mac OS X, you should install VirtualBox and Boot2Docker.
- Install fig.
- Clone the repo -
git clone git@github.com:systers/portal.git
and cd into theportal
directory. - Run
fig build
. This command will pull the images required to run the project and will install the dependencies. - Run
docker run -e SECRET_KEY=foobarbaz portal_web
in your terminal. - Run
fig run web python systers_portal/manage.py migrate
. - Run
fig run web python systers_portal/manage.py createsuperuser
if you want to create a superuser to access the admin panel. - Run
fig up
to run the project. - Now Systers Portal should be running on port 8000. If you are on Linux, it
is
http://0.0.0.0:8000
. If you are using Boot2Docker, then it might behttp://192.168.59.103:8000/
. If the following IP address doesn't work for you, runboot2docker ip
and replace the previous ip with the Boot2Docker outputted IP address.
Documentation for Systers Portal is generated using Sphinx and available online at http://systers-portal.readthedocs.org/
To build the documentation locally run:
$ cd docs/
$ make html
To view the documentation open the generated index.html
file in browser -
docs/_build/html/index.html
.
For more information on semantics and builds, please refer to the Sphinx official documentation.
You can view the requirements document here.