Loading repository data…
Loading repository data…
umairqadir97 / repository
Boilerplate for building Flask API, and scaling to production
This POC/ boilerplate API is part of a larger system implementing data-warehousing that was required to normalize data coming from various sources and of different types. The system parsed all the incoming data to common JSON format, before ingestinng to the ware-house. We also parsed PDFs, xmls, html and excel/ csv files along with other databases.
Why Flask
Do you think that because Flask is a micro-framework, it must only be good for small, toy-like web applications? Well, not at all!
Can Flask scale? For many, that is the million dollar question. Unfortunately even the Flask official documentation is ambiguous about this topic. Flask is a small, unobtrusive framework that simplifies the interface between your application and the web server. Outside of that, it mostly stays out of your way, so if you need to write an application that can scale, Flask is not going to prevent it, and in fact, it will allow you to freely choose the components of your stack and not impose choices on you like big frameworks tend to do.
Top 3 Key Learnings:
Contributors are always welcomed!
This project still needs some effort to formalize the structure a bit more. And of course, writing the tests.
To get a local copy up and running follow these simple example steps.
To run this project, you should have following dependencies ready:
git clone https://github.com/umairqadir97/scaling_flask_api.git
cd scaling_flask_api
pip3 install -r requirements.txt
python3 api.py
Postman collection is provided as part of the solution. Visit Postman Collections
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.
git checkout -b amazing_features)git commit -m 'Add some Amazing Features')git push origin amazing_features)Distributed under the MIT License. See LICENSE for more information.
Muhammad Umair Qadir - Email
LinkedIn: LinkedIn