Systers Portal is for Systers communities to post and share information within and with other communities.
Website: http://portal.systers.org
Project page: https://anitab-org.github.io/portal/
If you are interested in learning more about this project, start with reading Portal GitHub Wiki.
sudo apt-get install libpq-dev python3-dev
git clone https://github.com/systers/portal.git
and cd into
the portal
directory. If working behind a proxy, follow the instructions here.Create a virtual environment with Python 3 and install dependencies:
$ virtualenv venv --python=/path/to/python3
$ source venv/bin/activate
$ pip install -r requirements/dev.txt
$ sudo apt-get install python-gdal
systersdb
database, where systersdb
might be any suitable name [Password should not be empty].
$ sudo -i -u postgres
$ createuser <any name e.g. alice> --pwprompt
$ psql
$ CREATE DATABASE systersdb;
$ \c systersdb;
$ GRANT ALL PRIVILEGES ON DATABASE systersdb to <the name>;
.env.example
to .env
.Update the values in the .env
file with the corresponding values like below.
.env
file SECRET_KEY = <your-secret-key>
DEBUG = True
ALLOWED_HOSTS = *
# Database settings
DB_NAME = systersdb
DB_USER = <your-database-username>
DB_PASSWORD = <your-database-password>
DB_HOST = localhost
DB_PORT = 5432
# Email settings (Optional)
EMAIL_HOST = localhost
EMAIL_PORT = 1025
# External APIs (Optional)
GOOGLE_MAPS_API_KEY = <your-google-maps-api-key>
ZOOM_API_KEY = <your-zoom-api-key>
ZOOM_API_SECRET = <your-zoom-api-secret-key>
ZOOM_USER_ID = <your-zoom-user-id>
python systers_portal/manage.py migrate
.python systers_portal/manage.py cities_light
for downloading and importing data for django-cities-light.python systers_portal/manage.py createsuperuser
to create a superuser for the admin panel.
Fill in the details asked.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
testing python systers_portal/manage.py runserver --settings=systers_portal.settings.testing
.flake8 systers_portal
and fix PEP8 warnings.python systers_portal/manage.py test --settings=systers_portal.settings.testing
to run all the tests.If you face some issues while installing and making Portal up in your local, have a look at issues labelled as While Setting up Portal.
pip install virtualenv
using windows command linegit clone https://github.com/systers/portal.git
and cd into the portal
directory. Use git CMD or git Bash(unix-like terminal) to do so.Create a virtual environment with Python 3 and install dependencies, using CMD :
$ virtualenv venv
$ .\venv\Scripts\activate
$ pip install -r requirements/dev.txt
systers_portal/settings/base.py
and make sure the path points to the GDAL Library on your local machine.Create systersdb
database, where systersdb
might be any suitable name.
$ Server [localhost]: Just press enter, leave this empty
$ Database [postgres]: Just press enter, leave this empty
$ Port [5432]: This is the default port just press enter, leave this empty
$ Username [postgres]: This is the default username just press enter, leave this empty
$ Password for user postgres: Input password you created during installation and press enter
$ CREATE USER <anyname you want e.g systers> WITH PASSWORD 'your password';
$ CREATE DATABASE systersdb;
$ \c systersdb;
$ GRANT ALL PRIVILEGES ON systersdb TO <username created above>;
.env.example
to .env
.Update the values in the .env
file with the corresponding values like below.
.env
fileSECRET_KEY = <your-secret-key>
DEBUG = True
ALLOWED_HOSTS = *
# Database settings
DB_NAME = systersdb
DB_USER = <your-database-username>
DB_PASSWORD = <your-database-password>
DB_HOST = localhost
DB_PORT = 5432
# Email settings (Optional)
EMAIL_HOST = localhost
EMAIL_PORT = 1025
# External APIs (Optional)
GOOGLE_MAPS_API_KEY = <your-google-maps-api-key>
ZOOM_API_KEY = <your-zoom-api-key>
ZOOM_API_SECRET = <your-zoom-api-secret-key>
ZOOM_USER_ID = <your-zoom-user-id>
python systers_portal/manage.py migrate
.python systers_portal/manage.py cities_light
for downloading and importing data for django-cities-light.python systers_portal/manage.py createsuperuser
to create a superuser for the admin panel.
Fill in the details asked.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
testing python systers_portal/manage.py runserver --settings=systers_portal.settings.testing
.flake8 systers_portal
and fix PEP8 warnings.python systers_portal/manage.py test --settings=systers_portal.settings.testing
to run all the tests.Congratulations! you just set up the Systers Portal on you windows dev enviroment. If you face any issues while installing and making Portal up in your local, have a look at issues labelled as While Setting up Portal.
If you wish to view a sneak peek of the Systers Portal, you may use Docker to preview the Portal. Note: The following Docker configuration is not intended to be run in production at the moment. It may be configured to do so in the future.
git clone https://github.com/systers/portal.git
to clone the Systers
Portal repository. After the clone is done, change directory (cd) to the
portal
directory.docker-compose build
. This pulls the Docker images required to run the
project and installs the necessary dependencies.docker run -e SECRET_KEY=foobarbaz portal_web
.docker-compose run web python systers_portal/manage.py migrate
.docker-compose run web python systers_portal/manage.py cities_light
for downloading and importing data for django-cities-light.docker-compose run web python systers_portal/manage.py createsuperuser
if you wish to create a superuser to access the admin panel.docker-compose up
to start the webserver for the Django Systers Portal
project.http://0.0.0.0:8000
in your browser.http://192.168.59.103:8000/
in your browser. If this IP address
doesn't work, run boot2docker ip
from the command line and replace
the previous IP address in the HTTP request with the IP returned by
boot2docker.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.
You can reach the maintainers and our community on AnitaB.org Open Source Zulip. If you are interested in contributing to portal, we have a dedicated stream for this project #portal, where you can ask questions and interact with the community, join with us!