A student representatives website. This project is live! You can see a working instance of 1327 here!
To be able to contribute to 1327, one needs to get the source code with all dependencies. Please note, that submodules for bootstrap, font-awesome and bootstrap-markdown are in use:
git clone https://github.com/fsr-itse/1327.git
Freshly created code needs to be tested - besides our use of unit tests, linting and continous integration, it is possible to run the application in a non-production environment using Vagrant or a Virtual Environment.
One can simply set up an execution environment using vagrant
:
vagrant up --provision
At that point, one created a vagrant box, running a PostgreSQL database server, Apache web server and the Django application. The contents are available on the default port 8000
, which allows one to access the website at http://localhost:8000
. To create a new superuser for the application, execute vagrant ssh
in the project directory and trigger the django user management system:
./manage.py createsuperuser --username=root
To login with your local user instead of the default OpenID login, you have to visit http://localhost:8000/login?local_login=1
Another way of executing this django application is the use of a virtual python environment. This way bypasses the needs for a virtual machine and simplifies the life with multiple python versions installed:
virtualenv -p /usr/bin/python3 env
source env/bin/activate
pip install -r requirements.txt
python manage.py migrate
python manage.py createsuperuser --username=root
python manage.py runserver 0.0.0.0:8000
After you're done with these steps, you'll need to install all static dependencies via Yarn.
- Install Yarn
- go into the directory
static
- run the command
yarn
For deploying on a single machine 1327 you'll need to install all requirements from requirements-deploy.txt
, and you can follow these instructions, for setting up a webserver and starting all scripts using a Process Control System, if you like.
You'll also need to setup yarn, as indicated in the last section.
The software is licensed under the terms of the MIT license. Please note, that non-MIT-licensed contents might be part of this repository.