/template-flask

My template for new Flask projects.

Primary LanguagePythonThe UnlicenseUnlicense

Jace's Flask Template

This is a cookiecutter template for a typical Flask application following modern packaging conventions. It utilizes popular libraries alongside Make and pipenv to fully automate all development and deployment tasks. Check out the live demo: jacebrowning/template-flask-demo

Build Status

Features

  • Settings broken out into local, staging, and production
  • API using Flask API
  • Unit and integration testing using pytest, pytest-describe, and pytest-expecter
  • End-to-end testing using Splinter
  • Makefile for automating common development tasks:
    • Installing dependencies into a virtual environment using pipenv
    • Generate superuser and other fixtures to seed the database
    • Running tests against the backend and frontend
    • Running style checkers (pycodestyle/pydocstyle) and linters (pylint)
  • Continuous Integration via CircleCI
  • Continuous Delivery via Heroku

If you are instead looking for a Python library template, check out jacebrowning/template-python.

Usage

Install cookiecutter and generate a project:

$ pip install cookiecutter
$ cookiecutter gh:jacebrowning/template-flask -f

Cookiecutter will ask you for some basic info (your name, project name, python package name, etc.) and generate a base Python project for you.

Updates

Checkout the appropriate branch of template-flask-demo and manually merge changes into your project.