Skip to main content

firm-stack

Pure-Python ports of the Rails Solid stack — database-backed, no Redis required.

firm-stack is the meta-package for firm: it installs the modules you pick via extras, in one shot. Each component is also published independently, so you can just as well install only what you need:

Component Package Ports
Background jobs firm-queue Solid Queue
Cache store firm-cache Solid Cache
Pub/sub firm-channel Solid Cable
Audit log firm-audit —
Web dashboard firm-ui Mission Control

Everything runs on SQLite, PostgreSQL, or MySQL via SQLAlchemy.

Install

firm-stack is extras-only — a bare pip install firm-stack installs no modules, so always pick at least one:

pip install "firm-stack[queue]"              # background jobs
pip install "firm-stack[queue,cache]"        # jobs + caching
pip install "firm-stack[ui]"                 # web dashboard (pulls all four modules)
pip install "firm-stack[all]"                # everything, all drivers and integrations

# or skip the meta-package and install components directly:
pip install firm-queue
pip install "firm-cache[encryption]"

Imports are always under the firm namespace regardless of which packages you installed:

import firm.queue
from firm.cache import Cache
from firm.channel import Channel

Why "firm-stack" and not "firm"? The PyPI name firm is held by a dormant, release-less registration; a PEP 541 name-transfer request is pending. If it is granted, the meta-package will also be published as firm and firm-stack will remain as a compatible alias.

See the project README and documentation for full usage.

Metadata

Release files for firm-stack 1.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 firm-stack 1.0.0
File Size Uploaded
firm_stack-1.0.0.tar.gz 4.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for firm-stack 1.0.0
File Interpreter ABI Platform
firm_stack-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 8.4 kB

Release files / firm_stack-1.0.0.tar.gz

Download URL firm_stack-1.0.0.tar.gz
Size 4.2 kB
Tags Source
SHA-256 checksum
How to use checksums
60e4c92da8303c081b396a4a8f8e8328cacb88e3f03a805279cef69b9ec52772
BLAKE2b-256 checksum
How to use checksums
26e48fda40c507f56ea19337ecd1e8d46af4cf94dd42004a2e647af1591a38d0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.11.31 {"installer":{"name":"uv","version":"0.11.31","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / firm_stack-1.0.0-py3-none-any.whl

Download URL firm_stack-1.0.0-py3-none-any.whl
Size 4.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7c12b08512112f3d2317ae4baddd937e0fea73ce36a909c76a2de2379944dce8
BLAKE2b-256 checksum
How to use checksums
197d02a87db4a61c0c5ffd6d925e2bd4c9d085b3f57eccc699fda0b358f66414
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.11.31 {"installer":{"name":"uv","version":"0.11.31","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

1.1.0

2 release files

This release

1.0.0 This release

2 release files

0.1.0

2 release files

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