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
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
andMDS_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
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | c42c86fc40a877dcb218f9b245fc9ed0301b3377fd0f8ea79cfc9cf007d8a8de |
|
MD5 | 107df3da89519a27bf6fec7e5ad93181 |
|
BLAKE2b-256 | ecec9b7f7c5115b9063377474b05f5bbc5ece5f2709d6c80945834e32ffbb94b |
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | c4eb122d8db708d4d53ddc4e945dd1af3c79d1eaf6014a1f7a1bf62a0c8edb7b |
|
MD5 | 494c8b92c3cc2806cca40eabcaef3a03 |
|
BLAKE2b-256 | 41f6cf1ce161f9dced79f8b38b42ec5318d9b2a9a0614951ec2e9a16b04dfd24 |