gofynd / Flask Full
Programming Languages
Projects that are alternatives of or similar to Flask Full
Flask-Full
.. image:: https://img.shields.io/circleci/project/github/RedSparr0w/node-csgo-parser/master.svg :alt: Travis
Flask-Full is a boilerplate framework on top of flask for developing large api backend applications using flask. It has in built support for creating shell commands, celery, websocket, eventlet, mongoengine orm, swagger-ui api docs and sphinx docs.
Usage
Flask-Full requires minimum python 3.5.
Pre-required Setup:
-
MacOS/Linux/Windows
-
git
-
Python3 / pip3 /
-
MongoDB
.. code:: shell
git clone [email protected]:fynd/flask-full.git
cd flask-full (rename repository directory to required value)
pip3 install -r requirements.txt
To start server hit
.. code:: shell
python3 manage.py run -p 8080
Server will start on port 8080. Hitting http://localhost:8080/ping/ on web browser should return {"message": "pong"}.
API Docs are powered by swagger ui and can be viewed by hitting http://localhost:8080/apidocs/ .
To start celery hit
.. code:: shell
python3 manage.py celery
To start beat hit
.. code:: shell
python3 manage.py beat
For available commands and options hit
.. code:: shell
python manage.py
Structure
.. code:: shell
โโโ CHANGES Change logs
โโโ README.rst
โโโ manage.py Management commands file
โโโ meta.conf App meta conf
โโโ requirements.txt 3rd party libraries libraries
โโโ requirements_test.txt Testing 3rd libraries
โโโ temp Temp directory for storing logs
โโโ app
โโโ __init__.py App starting point
โโโ app.py Main blueprint with before and after request handler
โโโ api_info.py API level constants
โโโ choices.py CHOICES constant dictionary
โโโ crons.py Crons dictionary file
โโโ exceptions.py Custom exceptions
โโโ stats.py API stats
โโโ wsgi.py wsgi app
โโโ wsgi_aux.py wsgi auxilary app
โโโ utils Utils
โ โโโ __init__.py
โ โโโ api_caller.py Wrapper over requests which handles emits blinker signal over call
โ โโโ common_util.py common utils
โ โโโ json_util.py contains custom flask encodes
โ โโโ slack_util.py
โโโ api
โโโ v1
โโโ โโโ urls.py url routes
โโโdemo_api container one demo api
You can also use docker-compose. Hit below command to start server on port 8080.
.. code:: shell
docker-compose build
docker-compose up