Skip to main content

Flask-Storm

Test status PyPI version status

Flask-Storm is an extension for Flask that adds support for Canonical’s ORM Storm to your application. Flask-Storm automatically opens and closes database connections on demand when requests need them.

Example

Access to the database is done using the store application context local. Within an application context this variable holds a reference to a Storm Store instance. If no connection is opened it will automatically open one. When the application context is torn down, normally after the request has returned, the store is closed.

from flask_storm import store
from storm.locals import Int, Unicode

class User(object):
    __storm_table__ = "users"

    id = Int(primary=True)
    name = Unicode()


@app.route("/")
def index():
    # Get name of user with ID 1
    return store.get(User, 1).name

Installation

Flask-Storm is tested Python 3.11 or newer.

pip install flask_storm[fancy]

This installs Flask-Storm with SQL highlighting and reformatting support. If you do not want this drop the fancy.

pip install flask_storm

Documentation

Documentation is available on https://runfalk.github.io/flask-storm

Development

Install uv first.

# Setup environment
uv sync --extra fancy

# Run test suite
uv run --extra fancy pytest

# Build documentation
uv run sphinx-build doc/ doc-build/

# Run auto formatter
uv run ruff format flask_storm/ tests/

# Run linter
uv run ruff check flask_storm/ tests/

# Build source and wheel distributions
uv build

See the changelog for release history.

Metadata

Release files for Flask-Storm 2.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for Flask-Storm 2.0.0
File Size Uploaded Provenance Actions
flask_storm-2.0.0.tar.gz 18.6 kB Without provenance Details for flask_storm-2.0.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for Flask-Storm 2.0.0
File Interpreter ABI Platform Actions
flask_storm-2.0.0-py3-none-any.whl Python 3 none any Details for flask_storm-2.0.0-py3-none-any.whl

Total release size: 29.6 kB

Release files / flask_storm-2.0.0.tar.gz

Download URL flask_storm-2.0.0.tar.gz
Size 18.6 kB
Tags Source
SHA-256 checksum
How to use checksums
142b62e1ffd954377706a449bb7ba02c003febfdc5fb4cdf1028d57289d9902a
BLAKE2b-256 checksum
How to use checksums
82d3daf80cfc4bd045c870fd15292da1f313dbc3a30e14eda4ab120d16224186
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / flask_storm-2.0.0-py3-none-any.whl

Download URL flask_storm-2.0.0-py3-none-any.whl
Size 11.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
10a8f11099baa9988b9d3d5de76def552f08872d2e31244f9dbc863f8ac24ad6
BLAKE2b-256 checksum
How to use checksums
9dcac80a5a4ff10a2292bb60c56dd96a4ce0d1718a39ed8148deb360a49a4a10
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.13.5 {"installer":{"name":"uv","version":"0.13.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Security for Flask-Storm 2.0.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page