In this I'm structuring REST API using Flask and popular extension Flask-RESTful.
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
Table of Contents
Using Flask and popular extensions Flask-RESTful, Flask-JWT, and Flask-SQLAlchemy will dive right into developing complete, solid, production-ready REST APIs.
Also looking into essential technologies Git, Heroku, and nginx.
- Create resource-based, production-ready REST APIs using Python, Flask, and popular Flask extensions;
- Handle secure user registration and authentication with Flask.
- Using SQLAlchemy and Flask-SQLAlchemy to easily and efficiently store resources to a database; and
- Understand the complex intricacies of deployments and the performance of Flask REST APIs.
- Connect web or mobile applications to databases and servers via REST APIs
- Create secure and reliable REST APIs which include authentication, logging, caching, and more
- Understand the different layers of a web server and how web applications interact with each other
- Handle seamless user authentication with advanced features like token refresh
- Handle log-outs and prevent abuse in your REST APIs with JWT blacklisting
- Develop professional-grade REST APIs with expert instruction
- Integrate advanced functionality in your API such as image upload, payments, or user confirmation e-mails!
- Bring your REST API development to a whole new level by getting familiar with more of the Flask ecosystem
- Improve operations of existing REST APIs with database migrations and extensive refactoring knowledge
- Easily deploy documentation pages and test your API with Postman's collection runner
- Use Marshmallow for data serialization and deserialization
- Send e-mails and user confirmations
- Upload images
- Database migrations
- Easy ways of writing documentation and testing your API
- Handle payments using Stripe
- Third party login using OAuth (GitHub is used as the example)
A REST API is an application that accepts data from clients and returns data back. For example, a REST API could accept text data from the client, such as a username and password, and return whether that is a valid user in the database. When developing REST APIs, our clients are usually web apps or mobile apps. That's in contrast to when we make websites, where the clients are usually the users themselves.
This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.
You should have python and pip installed on your machine.
- python
- pip
- Clone the repo
git clone https://github.com/your_username_/Project-Name.git
- Install libraries
pip install library_name
- To install virtual environment (Browser to project folder's directory, then run)
pip install virtualenv
- Then restrict python version in your environment
virtualenv venv --python=python3.8
- To activate virtual environment
source venv/bin/activate
- To run the app
python app.py
- To install python environment (Browser to project folder's directory, then run)
pip install pipenv
- Then restrict python version in your environment
pipenv --python=python3.8
- To activate virtual environment
pipenv shell
- To run the app
python app.py
Use this space to show useful examples of how this repository can be used or improved. Additional screenshots, code examples and demos work well in this space. You may also link to more resources.
For more examples, please refer to the Documentation
See the open issues for a list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Work Branch (
git checkout -b dev/your_name
) - Commit your Changes (
git commit -m 'Add some Files'
) - Push to the Branch (
git push origin dev/your_name
) - Open a Pull Request
Syed Faique Ali - @faiqueali017 - [email protected]
LinkedIn Profile: https://www.linkedin.com/in/faique-ali/