miguel-osuna / Quotes-API

Quotes RESTful API created with Flask-RESTful and Flask-Mongoengine. Documented with Open API specification. Deployed with Zappa.

Home Page:https://v8lpkwzgbl.execute-api.us-east-1.amazonaws.com/production/documentation

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Quotes-API

πŸ“– Description

RESTful API that serves the most famous quotes from all time. Built with Flask-RESTful.

🎯 Features

  • RESTful API created with Flask-RESTful
  • MongoDB integration with Flask-Mongoengine
  • Open API specification documentation

πŸ”† Visuals

Environments

Environment Endpoint
LOCAL Swagger Docs
PROD Swagger Docs

πŸ’‘ Getting Started

Follow the instructions below to work on the project on your local environment.

πŸ“‹ Prerequisites

In case you don't use Docker, you'll need Git, Python 3.8, Pip and a Virtual Environment (in this case, Pipenv is used as a package manager and virtual environment).

πŸ’» Installation

# Clone this repository
$ git clone https://github.com/miguel-osuna/Quotes-API.git

# Go into the repository from the terminal
$ cd Quotes-API

# Remove current origin repository
$ git remote remove origin

All dependencies are listed on the Pipfile.

πŸ‹ Running project with Docker

This will run the project on your local environment.

Make sure to create a hidden folder like envs.example named .envs, with the same kind of environment variables.

docker-compose -f local.yml build
docker-compose -f local.yml up -d
docker-compose -f local.yml up -d --build

Commands

The project supports cli commands for formatting, linting, database initialization and more.

Action Command
Test pipenv run test
Format pipenv run format
Lint pipenv run lint

πŸš€ Deployment

This project includes configuration files for both Heroku and AWS using Zappa.

πŸ”§ Built With

  • Flask - Python Web Framework
  • Zappa - Python Serverless Deployment Library
  • Heroku - Hosting Platform

Project Documentation

See the project documentation

🎭 Authors

πŸ“’ License

This project is licensed under the MIT License - see the LICENSE.md file for details.

About

Quotes RESTful API created with Flask-RESTful and Flask-Mongoengine. Documented with Open API specification. Deployed with Zappa.

https://v8lpkwzgbl.execute-api.us-east-1.amazonaws.com/production/documentation

License:MIT License


Languages

Language:Python 96.5%Language:Dockerfile 2.0%Language:Jinja 1.3%Language:Shell 0.2%Language:Procfile 0.0%