Skip to content

Latest commit

 

History

History
73 lines (49 loc) · 2.97 KB

README.md

File metadata and controls

73 lines (49 loc) · 2.97 KB

Pokemon Trainers REST API

Simple and easy to use REST API to manage Pokemon Trainer's Teams.

Features

  • 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.

Prerequisites

  • Python 3.7>
  • Virtualenv

Instalation

python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

Environment

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.

DEV

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

Run tests

python manage.py test

License

The MIT License (MIT)

Copyright (c) 2022 Raul Novelo

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.