Hack & Hustle is the company blog of Elastic Inc. We write about startups, sales, and everything related to hacking and hustling.

← Back to Elastic homepage

We're big fanboys of Flask here at Elastic. Whether it be powering our sales software or internal analytics tools, we choose Flask because of it's simplicity and active community. In that spirit, we've developed a few extensions along the way and hope you can benefit from there as much as we have.

It's easy to reinvent the wheel when building a new API for a project. The same boilerplate code is copy and pasted from one app to another dishing up an unhealthy portion of code spaghetti. Flask-MongoRest gives us the ability to quickly rollout a new API endpoint for any collection in Mongo. It's built on the MongoEngine ORM and tries to be as Flasky as possible in its use of decorators and succinct constructs.

As developers, we've all spent countless hours debugging mysterious issues in production. We wanted a way to easily see all the relevant data for a given user/request in order to diagnose cryptic errors or be able to replay issues in our development and staging environment. Flask-Tracking allows us to see payload data, execution time, user, and any custom data we may have inserted within our app on a per request basis; saving us tons of time.

Running a Gevent/Gunicorn configuration behind AWS's ELB, we needed a way to easily compress our responses. Flask-gzip makes it easy to zip up our responses to make our app a bit more snappy.

A port of Django-Sparkle, an way to easily manage native application versions using the handy Sparkle framework for distribution.

We'd love to hear about your Flask extensions and look forward to your pull requests!

You should also read…