Skip to content
API for the Penn Labs platform built using Django REST framework. Includes accounts engine, club directory, product listings, documentation etc.
Python HTML Dockerfile Shell
Branch: master
Clone or download
Latest commit 1eb0335 Dec 22, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Migrate to Codecov (#59) Nov 13, 2019
Platform Lint + Apply Black (#62) Nov 23, 2019
accounts
application Lint + Apply Black (#62) Nov 23, 2019
docker Configure Shibboleth Nov 1, 2019
org Lint + Apply Black (#62) Nov 23, 2019
services Lint + Apply Black (#62) Nov 23, 2019
tests
.dockerignore Add LICENSE to dockerignore Oct 24, 2019
.gitignore
Dockerfile Add dokku Dockerfile configuration Aug 14, 2019
LICENSE Create LICENSE Oct 24, 2019
Pipfile Migrate to Codecov (#59) Nov 13, 2019
Pipfile.lock Bump django from 2.2.7 to 2.2.8 (#63) Dec 9, 2019
README.md
manage.py Lint + Apply Black (#62) Nov 23, 2019
nginx.conf.sigil Update dokku nginx config Aug 14, 2019
setup.cfg Fix isort settings Dec 22, 2019

README.md

Platform

CircleCI Coverage Status

The Labs Platform is the back-end interface to the ecosystem that facilitates the organization's:

  1. Accounts Engine
  2. Cross-Product Resources
  3. Organizational Information

Installation

  1. Configure environment variables (e.g. .env) containing:
DATABASE_URL=mysql://USER:PASSWORD@HOST:PORT/NAME
SECRET_KEY=secret
DJANGO_SETTINGS_MODULE=Platform.settings.production
SENTRY_URL=https://pub:private@sentry.example.com/product
NGINX_CERT=-----BEGIN CERTIFICATE-----
<snip>
-----END CERTIFICATE-----
NGINX_KEY=-----BEGIN PRIVATE KEY-----
<snip>
-----END PRIVATE KEY-----
SHIBBOLETH_KEY=-----BEGIN PRIVATE KEY-----
<snip>
-----END PRIVATE KEY-----
  1. Run using docker: docker run -d pennlabs/platform

Documentation

Routes are defined in /pennlabs/urls.py and subsequent app folders in the form of */urls.py. Account/authorization related scripts are located in accounts/ and Penn Labs related scripts are located in org/.

Documentation about individual endpoints is available through the documentation/ route when the Django app is running.

Current Maintainers

You can’t perform that action at this time.