• Stars
    star
    154
  • Rank 242,095 (Top 5 %)
  • Language
    Python
  • Created over 6 years ago
  • Updated about 6 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

starter/boilerplate flask application with celery, mongoengine, signals, shell commands, swagger api docs and sphinx docs integration

Flask-Full

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
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

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

python3 manage.py celery

To start beat hit

python3 manage.py beat

For available commands and options hit

python manage.py

Structure

├── 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.

docker-compose build
docker-compose up

More Repositories

1

gravity-view

Introducing Gravity View: Because swiping is so yesterday!
Java
219
star
2

mildnet

Visual Similarity research at Fynd. Contains code to reproduce 2 of our research papers.
Jupyter Notebook
84
star
3

fdk-client-javascript

Fynd Development Kit(FDK) for Javascript
JavaScript
21
star
4

fdk-cli

FDK CLI
TypeScript
16
star
5

celery-autoscale

Python
16
star
6

nitrozen-vue

Nitrozen Design (Alpha) for Vue by Fynd
Vue
15
star
7

fdk-extension-javascript

FDK Extension Helper Library
JavaScript
9
star
8

nitrozen-ios

Swift
6
star
9

kube-bootstrapper

Bootstrap Kubernetes cluster with nginx-ingress and ALB on AWS using kops and Terraform
Shell
5
star
10

nitrozen-react

Nitrozen React
TypeScript
5
star
11

nitrozen-android

Nitrozen Design for Android
Kotlin
5
star
12

fdk-client-swift

Fynd Development Kit(FDK) for Swift 
Swift
5
star
13

ansible-metricbeat

Ansible role to install and setup Metricbeat
Python
5
star
14

NQ2SQ

Tool to convert natural language questions to appropriate SQL query for MYSQL db to answer that questions.
Python
4
star
15

fdk-client-apispec

FDK Client API Spec
4
star
16

angular-json-viewer

Angular2+ JSON Viewer component. JSON in HTML with syntax highlight like Chrome DevTools.
TypeScript
4
star
17

simpl-python

Python Client for Simpl API
Python
3
star
18

huffer-edge

Huffer: On The Fly Image Transformation Library for Cloud!
JavaScript
3
star
19

ec2-scheduler

ec2-scheduler is a service powered by AWS Lambda to automatically start and stop ec2 instances
Python
3
star
20

fdk-client-kotlin

Fynd Development Kit(FDK) for Kotlin
Kotlin
3
star
21

alb-logs-parser

Python
3
star
22

fdk-client-golang

Fynd Development Kit(FDK) for Golang
Go
2
star
23

fdk-extension-bridge-javascript

JavaScript
2
star
24

ansible-nginx

Ansible role to install and setup nginx web server
Ruby
2
star
25

fdk-extension-java

FDK Extension Helper Library
Java
2
star
26

asyncio-requests

Python
1
star
27

axios-adapter-logger

Adapter Based Logger
JavaScript
1
star
28

ecs_provision

Python
1
star
29

gofynd.github.io

CSS
1
star
30

glamar-ios-demo

Swift
1
star
31

collator

TypeScript
1
star
32

ignite

A Python framework for managing Dataproc cluster and Scheduling PySpark Jobs over it. Additionally it provides docker based development for debugging PySpark jobs.
Python
1
star
33

example-extension-java-vue

This is example extension sample code Java + Vue
Java
1
star
34

fdk-client-java

Fynd Development Kit(FDK) for Java
Java
1
star
35

fdk-store

JavaScript
1
star