Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mrf345/flask_restful_api_production_example
Flask restful API production example
https://github.com/mrf345/flask_restful_api_production_example
api example flask production restful
Last synced: 10 days ago
JSON representation
Flask restful API production example
- Host: GitHub
- URL: https://github.com/mrf345/flask_restful_api_production_example
- Owner: mrf345
- License: mit
- Created: 2020-04-24T20:52:47.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2021-09-08T15:43:32.000Z (about 3 years ago)
- Last Synced: 2024-10-11T08:26:48.487Z (about 1 month ago)
- Topics: api, example, flask, production, restful
- Language: Python
- Homepage: https://925b1pnu98.execute-api.us-east-2.amazonaws.com/production
- Size: 44.9 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Flask restful API production example
There's a live demo of the project hosted on AWS Lambda functions.
### Setup
##### - With docker:
Make sure `docker` and `docker-compose` are installed and run `docker-compose up`##### - Or from the source instead:
Make sure `Python 3.7` and `pip` are installed and then:
- `pip install -r requirements/core.py`
- `DEVELOPEMENT="True" FLASK_APP="app" flask run`##### - To run tests and linting
- Tests `make tests`
- Linting `make lint`### Intro
##### - Features and Stack
- Swagger OpenAPI2 API with `Flask-Restx`
- Database migration with `Flask-Migrate`
- Containerized local dev environment with `Docker`
- AWS RDS and lambda deployment ready with `Zappa`
- Errors monitoring and reporting with `Sentry`
- Github actions testing, linting and deployment with `PyTest` and `Flake8`.##### - Project structure
.
├── app.py
├── docker-compose.yml
├── Dockerfile
├── LICENSE
├── Makefile
├── migrations
│ ├── alembic.ini
│ ├── env.py
│ ├── README.md
│ ├── script.py.mako
│ └── versions
│ └── d826e674004f_.py
├── README.md
├── requester
│ ├── api
│ │ ├── auth.py
│ │ ├── endpoints
│ │ │ ├── features.py
│ │ │ ├── __init__.py
│ │ │ └── users.py
│ │ ├── __init__.py
│ │ ├── limiter.py
│ │ └── setup.py
│ ├── config.py
│ ├── constants.py
│ ├── database
│ │ ├── defaults.py
│ │ ├── __init__.py
│ │ ├── mixins.py
│ │ ├── models.py
│ │ ├── relations.py
│ │ └── setup.py
│ ├── __init__.py
│ ├── main.py
│ └── utils.py
├── requirements
│ ├── core.txt
│ ├── deploy.txt
│ └── test.txt
├── tests
│ ├── conftest.py
│ ├── features.py
│ ├── __init__.py
│ └── users.py
├── upgrade_db.sh
└── zappa_settings.json