Skip to main content

Model provenance and versioning via SQLAlchemy-Continuum

Project description

Uncomment below for banners

Build status Code coverage Maintenance yes GitHub license Documentation Status


Flask-Continuum is a lightweight Flask extension for providing data provenance and versioning support to Flask applications using SQLAlchemy. It is built on top of the sqlalchemy-continuum package, and provides a more Flask-y development experience for app configuration. If you’d like to configure your application with sqlalchemy-continuum directly, consult the sqlalchemy-continuum documentation.


To install the latest stable release via pip, run:

$ pip install Flask-Continuum

Alternatively with easy_install, run:

$ easy_install Flask-Continuum

To install the bleeding-edge version of the project (not recommended):

$ git clone
$ cd Flask-Continuum
$ python install


Setting up the flask application with extensions:

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from flask_continuum import Continuum

app = Flask(__name__)
db = SQLAlchemy(app)
continuum = Continuum(app, db)

Or, using via the Flask app factory pattern:

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from flask_continuum import Continuum

db = SQLAlchemy()
continuum = Continuum(db=db)
app = Flask(__name__)

The following is a minimal example highlighting how the extension is used. Much of the example was taken from the SQLAlchemy-Continuum documentation to show how this plugin extends that package for a Flask application:

from flask_continuum import VersioningMixin

# defining database schema
class Article(db.Model, VersioningMixin):
    __tablename__ = 'article'

    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    name = db.Column(db.Unicode(255))
    content = db.Column(db.UnicodeText)

# later in api or request handlers
article = Article(name='Some article', content='Some content')

# article has now one version stored in database
# 'Some article' = 'Updated name'

# 'Updated name'

# lets revert back to first version
# 'Some article'


For more detailed documentation, see the Docs.


File an issue in the GitHub issue tracker.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for Flask-Continuum, version 0.1.7
Filename, size File type Python version Upload date Hashes
Filename, size Flask_Continuum-0.1.7-py2.py3-none-any.whl (7.0 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size Flask-Continuum-0.1.7.tar.gz (99.1 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page