- Django 3.0+
- Django REST Framework - Powerful and flexible toolkit for building Web APIs.
- Django Cors Headers - A Django application for handling the server headers required for Cross-Origin Resource Sharing (CORS).
- Django Filter - Simple way to filter down a queryset based on parameters a user provides.
- Simple JWT - A JSON Web Token authentication plugin for the Django REST Framework.
- Whitenoise - Radically simplified static file serving for Python web apps
- Procfile for running gunicorn with New Relic's Python agent.
- Support for automatic generation of OpenAPI schemas.
- Automated generation of real Swagger/OpenAPI 2.0 schemas from Django REST Framework code with drf-yasg.
- Python 3.7>
- Virtualenv
$ python3 -m venv venv
$ source venv/bin/activate
$ pip install -r requirements.txt
Application running in multiple environments like DEV and PROD. All env variables used in this application are available in .env.example
, feel free to setup your own environment configuration.
Just make a copy from .env.local.example
and/or rename to .env.local
and setup your variables. Then run in terminal:
$ source .env.local
The first time you run the application, make sure to apply the database migrations and create a super user account:
$ python manage.py migrate
$ python manage.py createsuperuser
Finally start development server:
$ python manage.py runserver
Just make a copy from .env.production.example
and/or rename to .env.production
and setup your variables. Then run in terminal:
$ source .env.production
The first time you run the application, make sure to apply the database migrations, create a super user account and generate static files:
$ python manage.py migrate
$ python manage.py createsuperuser
$ python manage.py collectstatic --no-input
Finally start production server:
$ gunicorn project.wsgi --log-level=INFO
$ python manage.py test
The MIT License (MIT)
Copyright (c) 2020 ITM/TecNM
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.