Skip to main content

MDS Agency implementation

Project description

Contact informations

You are a city, a mobility provider or you simply want to know more about our MDS tools: send us a mail at contact@bluesystems.fr

django-mds - MDS compliant mobility data service

Build Status

A City of LA MDS Specification (Mobility Data Specification) compliant implementation of the Agency API for Python/Django

Goals & non-goals

Goals

  • Ultimately MDS compliance
  • A way to test MDS ideas on a real implementation as we believe it is hard to specify a quality API without a reference implementation alongside
  • Developer-friendly to be able for all stakeholders to contribute

Non-goals

  • High-performance: we favor developer-friendliness over performance (this software being stateless, scaling is trivial anyway. Just the database needs to be correctly dimensioned)
  • Full-featured UI: we provide an UI with required features, but this remains an API-first software
  • Data-analysis: analysis should be done by other apps consuming the consumer API of this app (the API must be designed to allow data consumption by third-party software)

Tech & requirements

  • Python 3 with Django and GeoDjango
  • Postgresql with PostGIS
  • Swagger for interactive API documentation (available on /schema)

How to run

Test project

  • Install and configure requirements (see above)
  • Run pip install .[dev] to install dependencies
  • You need the following env variables: MDS_DB_NAME, MDS_DB_USER and MDS_DB_PASSWORD
  • To initialize the database, run python manage.py migrate
  • To start the project locally, run MDS_DEV_DEBUG=1 python manage.py runserver

A sample environment configuration is provided in .env.example

Authentication

Request authentication is done through JWT bearer token as specified in MDS JWT secret key or public key should be given through environment configuration MDS_AUTH_SECRET_KEY or MDS_AUTH_PUBLIC_KEY

Frontend

See dedicated README in front/README.md

Release

We use semantic versioning and zest.releaser for the actual release:

fullrelease

Just follow the steps and hit Enter to answer Yes.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-mds-0.7.9.tar.gz (93.2 kB view details)

Uploaded Source

Built Distribution

django_mds-0.7.9-py3-none-any.whl (104.9 kB view details)

Uploaded Python 3

File details

Details for the file django-mds-0.7.9.tar.gz.

File metadata

  • Download URL: django-mds-0.7.9.tar.gz
  • Upload date:
  • Size: 93.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.8.1

File hashes

Hashes for django-mds-0.7.9.tar.gz
Algorithm Hash digest
SHA256 c42c86fc40a877dcb218f9b245fc9ed0301b3377fd0f8ea79cfc9cf007d8a8de
MD5 107df3da89519a27bf6fec7e5ad93181
BLAKE2b-256 ecec9b7f7c5115b9063377474b05f5bbc5ece5f2709d6c80945834e32ffbb94b

See more details on using hashes here.

File details

Details for the file django_mds-0.7.9-py3-none-any.whl.

File metadata

  • Download URL: django_mds-0.7.9-py3-none-any.whl
  • Upload date:
  • Size: 104.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.8.1

File hashes

Hashes for django_mds-0.7.9-py3-none-any.whl
Algorithm Hash digest
SHA256 c4eb122d8db708d4d53ddc4e945dd1af3c79d1eaf6014a1f7a1bf62a0c8edb7b
MD5 494c8b92c3cc2806cca40eabcaef3a03
BLAKE2b-256 41f6cf1ce161f9dced79f8b38b42ec5318d9b2a9a0614951ec2e9a16b04dfd24

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page