Skip to main content

Catzilla

Blazing-fast Python web framework with production-grade routing backed by a minimal, event-driven C core

CI PyPI version Python versions Documentation


Overview

Catzilla Logo

Catzilla is a high-performance Python web framework built for teams that want Python ergonomics without paying the usual runtime tax. Its HTTP engine lives in C, uses libuv and llhttp, and exposes a clean decorator-based API that feels familiar to Python developers while keeping request handling tight and predictable.

It is designed for low-latency APIs, high-throughput services, streaming workloads, and systems where memory usage matters just as much as raw throughput.

Why Catzilla

  • Fast where it matters: C-backed request parsing, routing, and response dispatch
  • Pythonic to use: @app.get(...), typed parameters, validation, and clean handler code
  • Built for production: middleware, background tasks, uploads, streaming, caching, and DI
  • Memory-aware by default: jemalloc-backed allocation strategy where available
  • Portable: supports Linux, macOS, and Windows with source and wheel-based workflows

🏆 Performance Snapshot

In the benchmark suite included in this repository, Catzilla currently leads FastAPI, Flask, and Django in direct localhost HTTP benchmarks for both single-worker and 10-worker runs. These numbers should be read as framework-overhead and runtime-efficiency comparisons, not as universal production guarantees. The current published artifact set covers the basic direct HTTP suite: hello world, JSON response, complex JSON, path parameters, and query parameters.

Single / 1 Worker

  • Average throughput: 55,731 req/s
  • Best endpoint: basic_hello_world at 82,817 req/s
  • Average latency: 2.02ms
  • Average peak memory: 30.77MB
  • Lead over FastAPI: 2.6x average throughput

Catzilla single-worker benchmark summary

Multi / 10 Workers

  • Average throughput: 159,997 req/s
  • Best endpoint: basic_hello_world at 190,612 req/s
  • Average latency: 7.49ms
  • Average peak memory: 439.08MB
  • Lead over FastAPI: 2.1x average throughput

Catzilla 10-worker benchmark summary

Current benchmark docs and artifacts:

✨ Features

Core Runtime

  • ⚡ Hybrid C/Python architecture for low-overhead request handling
  • 🔥 Trie-based routing with dynamic path parameters and fast lookup
  • 🧱 Minimal API surface with familiar decorator-style routing
  • 🔁 Sync and async handlers with native deferred async response support
  • 📦 Lean dependency model focused on the standard library and native code

Web Framework Features

  • 🛣️ Dynamic path and query parameters with typed extraction
  • ✅ Validation layer for request models and parameter constraints
  • 🧩 Dependency injection and middleware composition
  • 📤 Streaming responses, file uploads, background tasks, and static file serving
  • 🚦 HTTP error handling for 404, 405, 415, and framework-level exceptions

Developer Experience

  • 📖 Readable Python handlers on top of a high-performance core
  • 🧪 Comprehensive unit and end-to-end validation across Python and C layers
  • 🔧 Cross-platform build and packaging support
  • 🧰 Benchmark suite included so performance claims are reproducible

🚀 Memory Architecture

Catzilla ships with a memory strategy tuned for long-running services, including jemalloc integration where available. The goal is simple: keep throughput high while reducing fragmentation and avoiding the typical memory blow-up that shows up under sustained load.

Memory Features

app = Catzilla()

# Real-time memory statistics
stats = app.get_memory_stats()
print(f"Memory efficiency: {stats['fragmentation_percent']:.1f}%")
print(f"Allocated: {stats['allocated_mb']:.2f} MB")

Allocator Strategy

  • Request Arena: Optimized for short-lived request processing
  • Response Arena: Efficient response building and serialization
  • Cache Arena: Long-lived data with minimal fragmentation
  • Static Arena: Static file serving with memory pooling
  • Task Arena: Background operations with isolated allocation

📦 Installation

Quick Start (Recommended)

Install Catzilla from PyPI:

pip install catzilla

System Requirements:

  • Python 3.9+ (3.10+ recommended)
  • Windows, macOS, or Linux
  • Minimal runtime dependency footprint (psutil only)

Platform-Specific Features:

  • Linux/macOS: jemalloc memory allocator (high performance)
  • Windows: Standard malloc (reliable performance)
  • See Platform Support Guide for details

Installation Verification

python -c "import catzilla; print(f'Catzilla v{catzilla.__version__} installed successfully!')"

Alternative Installation Methods

From GitHub Releases

For specific versions or if PyPI is unavailable:

# Download specific wheel for your platform from:
# https://github.com/rezwanahmedsami/catzilla/releases/latest
pip install <downloaded-wheel-file>

From Source (Development)

For development or contributing:

# Clone with submodules
git clone --recursive https://github.com/rezwanahmedsami/catzilla.git
cd catzilla

# Create virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install in development mode
pip install -e .

Build Requirements (Source Only):

  • Python 3.9-3.14
  • CMake 3.15+
  • C Compiler: GCC/Clang (Linux/macOS) or MSVC (Windows)

🚀 Quick Start

Create a small application with sync routes, async routes, and typed parameters:

# app.py
from typing import Optional
import asyncio

from catzilla import BaseModel, Catzilla, JSONResponse, Path, Query, Request, Response

app = Catzilla(
    production=False,
    show_banner=True,
    log_requests=True,
)

class UserCreate(BaseModel):
    id: Optional[int] = None
    name: str
    email: Optional[str] = None

@app.get("/")
def home(request: Request) -> Response:
    return JSONResponse({
        "framework": "catzilla",
        "message": "Hello from Catzilla",
        "mode": "sync",
    })

@app.get("/health")
async def health(request: Request) -> Response:
    await asyncio.sleep(0)
    return JSONResponse({
        "status": "ok",
        "mode": "async",
    })

@app.get("/users/{user_id}")
def get_user(request: Request, user_id: int = Path(..., ge=1)) -> Response:
    return JSONResponse({
        "user_id": user_id,
        "message": f"Retrieved user {user_id}",
    })

@app.get("/search")
def search(
    request: Request,
    q: str = Query(""),
    limit: int = Query(10, ge=1, le=100),
) -> Response:
    return JSONResponse({
        "query": q,
        "limit": limit,
        "results": [{"id": index, "title": f"Result {index}"} for index in range(limit)],
    })

@app.post("/users")
def create_user(request: Request, user: UserCreate) -> Response:
    return JSONResponse({
        "message": "User created successfully",
        "user": {"id": user.id, "name": user.name, "email": user.email},
    }, status_code=201)

if __name__ == "__main__":
    app.listen(port=8000, host="127.0.0.1")

Run your app:

python app.py

Then visit http://127.0.0.1:8000.

Backward Compatibility

Existing code works unchanged (App is an alias for Catzilla):

from catzilla import App  # Still works!
app = App()  # Same memory benefits

🖥️ System Compatibility

Catzilla provides comprehensive cross-platform support with pre-built wheels for all major operating systems and Python versions.

📋 Supported Platforms

Platform Architecture Status Wheel Available
Linux x86_64 ✅ Full Support ✅ manylinux2014
macOS x86_64 (Intel) ✅ Full Support ✅ macOS 10.15+
macOS ARM64 (Apple Silicon) ✅ Full Support ✅ macOS 11.0+
Windows x86_64 ✅ Full Support ✅ Windows 10+
Linux ARM64 ⚠️ Source Only* ❌ No pre-built wheel

*ARM64 Linux requires building from source with proper build tools installed.

🐍 Python Version Support

Python Version Linux x86_64 macOS Intel macOS ARM64 Windows
3.9 ✅ ✅ ✅ ✅
3.10 ✅ ✅ ✅ ✅
3.11 ✅ ✅ ✅ ✅
3.12 ✅ ✅ ✅ ✅
3.13 ✅ ✅ ✅ ✅
3.14 ✅ ✅ ✅ ✅

🔧 Installation Methods by Platform

✅ Pre-built Wheels (Recommended)

  • Instant installation with zero compilation time
  • No build dependencies required (CMake, compilers, etc.)
  • Optimized binaries for maximum performance
  • Available for: Linux x86_64, macOS (Intel/ARM64), Windows x86_64
# Automatic platform detection
pip install <wheel-url-from-releases>

🛠️ Source Installation

  • Build from source when pre-built wheels aren't available
  • Requires build tools: CMake 3.15+, C compiler, Python headers
  • Longer installation time due to compilation
# For ARM64 Linux or custom builds
pip install https://github.com/rezwanahmedsami/catzilla/releases/download/vx.x.x/catzilla-x.x.x.tar.gz

⚡ Performance Notes

  • Native performance on all supported platforms
  • Architecture-specific optimizations in pre-built wheels
  • Cross-platform C core ensures consistent behavior
  • Platform-specific wheel tags for optimal compatibility

For detailed compatibility information, see SYSTEM_COMPATIBILITY.md.


📊 Performance Benchmarks

Catzilla includes a benchmark harness that compares it against FastAPI, Flask, and Django across direct HTTP paths and feature-specific slices. The current published benchmark artifacts in this repository cover the basic direct HTTP suite in two modes: Single / 1 worker and Multi / 10 workers.

🏗️ Real Server Environment

Direct localhost server benchmarking | wrk | macOS arm64 | 10s duration

This is real benchmark data collected from the repository benchmark runner. It is useful for comparing framework overhead and implementation efficiency on the same machine and workload shape.

Current Benchmark Highlights

Framework Averages

Mode Catzilla FastAPI Flask Django
Single / 1 worker avg RPS 55,731 21,251 3,410 3,337
Single / 1 worker avg latency 2.02ms 6.31ms 33.29ms 34.33ms
Single / 1 worker avg peak memory 30.77MB 58.17MB 70.84MB 72.87MB
Multi / 10 workers avg RPS 159,997 74,915 10,160 9,927
Multi / 10 workers avg latency 7.49ms 15.83ms 97.99ms 101.31ms
Multi / 10 workers avg peak memory 439.08MB 636.17MB 420.09MB 442.02MB

Endpoint Highlights

  • Best current result: basic_hello_world at 82,817 req/s single-worker and 190,612 req/s at 10 workers.
  • Lowest current Catzilla result in the published basic suite: basic_query_params at 34,912 req/s single-worker and 125,274 req/s at 10 workers.
  • Catzilla leads every published endpoint in both worker modes in the current direct HTTP dataset.

Benchmark Links

📈 Performance Visualizations

Overall performance comparison - single worker

Overall performance comparison - 10 workers

Requests per second heatmap - single worker

Requests per second heatmap - 10 workers

📋 View Complete Performance Report - Detailed analysis with current charts and endpoint-by-endpoint data

When to Choose Catzilla

  • ⚡ High-throughput requirements (API gateways, microservices, data pipelines)
  • 🎯 Low-latency critical applications (real-time APIs, financial trading, gaming backends)
  • 🧬 Resource efficiency (cloud computing, embedded systems, edge computing)
  • 🚀 C-level performance with Python developer experience

Note: Comprehensive benchmark suite with automated testing available in benchmarks/ directory.


🔧 Development

For detailed development instructions, see CONTRIBUTING.md.

Build System

# Complete build (recommended)
./scripts/build.sh

# Manual CMake build
cmake -S . -B build -DCMAKE_BUILD_TYPE=Debug
cmake --build build -j$(nproc)
pip install -e .

Testing

The project includes C tests, Python unit tests, and end-to-end validation:

# Run all tests ( C + Python Unit + e2e)
./scripts/run_tests.sh

# Run specific test suites
./scripts/run_tests.sh --python  # Python Unit tests only
./scripts/run_tests.sh --c       # C tests only
./scripts/run_tests.sh --e2e       # e2e tests only
./scripts/run_tests.sh --verbose # Detailed output

Performance Features

  • Trie-Based Routing: O(log n) average case lookup performance
  • Memory Efficient: Zero memory leaks, optimized allocation patterns
  • Route Conflict Detection: Warns about potentially overlapping routes during development
  • Method Normalization: Case-insensitive HTTP methods with automatic uppercase conversion
  • Parameter Injection: Automatic extraction and injection of path parameters to handlers

🎯 Performance Characteristics

  • Route Lookup: O(log n) average case with advanced trie data structure
  • Memory Management: Zero memory leaks with efficient recursive cleanup
  • Scalability: Tested with 100+ routes without performance degradation
  • Concurrency: Thread-safe design ready for production workloads
  • HTTP Processing: Built on libuv and llhttp for maximum throughput

🤝 Contributing

We welcome contributions! Please see CONTRIBUTING.md for detailed guidelines on:

  • Setting up the development environment
  • Building and testing the project
  • Code style and conventions
  • Submitting pull requests
  • Debugging and performance optimization

📚 Documentation

📖 Complete Documentation - Comprehensive guides, API reference, and tutorials

Quick References


👤 Author

Rezwan Ahmed Sami 📧 samiahmed0f0@gmail.com 📘 Facebook


🪪 License

MIT License — See LICENSE for full details.

Metadata

Release files for catzilla 0.2.3

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

Source distribution (sdist)

Source distribution for catzilla 0.2.3
File Size Uploaded
catzilla-0.2.3.tar.gz 3.2 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for catzilla 0.2.3
File
catzilla-0.2.3-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
catzilla-0.2.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ x86-64 Details
catzilla-0.2.3-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
catzilla-0.2.3-cp314-cp314-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.15+ x86-64 Details
catzilla-0.2.3-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
catzilla-0.2.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64 Details
catzilla-0.2.3-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
catzilla-0.2.3-cp313-cp313-macosx_10_15_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.15+ x86-64 Details
catzilla-0.2.3-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
catzilla-0.2.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details
catzilla-0.2.3-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
catzilla-0.2.3-cp312-cp312-macosx_10_15_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.15+ x86-64 Details
catzilla-0.2.3-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
catzilla-0.2.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details
catzilla-0.2.3-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
catzilla-0.2.3-cp311-cp311-macosx_10_15_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.15+ x86-64 Details
catzilla-0.2.3-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
catzilla-0.2.3-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details
catzilla-0.2.3-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
catzilla-0.2.3-cp310-cp310-macosx_10_15_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.15+ x86-64 Details
catzilla-0.2.3-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
catzilla-0.2.3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64 Details
catzilla-0.2.3-cp39-cp39-macosx_11_0_arm64.whl CPython 3.9 CPython 3.9 macOS 11.0+ ARM64 Details
catzilla-0.2.3-cp39-cp39-macosx_10_15_x86_64.whl CPython 3.9 CPython 3.9 macOS 10.15+ x86-64 Details

Total release size: 39.2 MB

Release files / catzilla-0.2.3.tar.gz

Download URL catzilla-0.2.3.tar.gz
Size 3.2 MB
Tags Source
SHA-256 checksum
How to use checksums
8e26e18c1dfbb22736fb4df6163893911ea803964b4f3d6cf9b7bb4cafc7de40
BLAKE2b-256 checksum
How to use checksums
bc59ab0af5094d3d12bb464479f8bbbc3c6b32536b91abb473299f80afadf83c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp314-cp314-win_amd64.whl

Download URL catzilla-0.2.3-cp314-cp314-win_amd64.whl
Size 512.5 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
8dcfb5e2c5e80e0845880f0278e4f7720a5f6ca40005d65d9538405604d4ecd3
BLAKE2b-256 checksum
How to use checksums
d2ba29c70056f9b5cd5a433cb69455d97ec7b94631b02242692d1f48a847a7b7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL catzilla-0.2.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 3.8 MB
Tags CPython 3.14 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
237ceab823c4874aa4630e306740c391f5dfd4a05c3abe1b76e3c39bbc5338e3
BLAKE2b-256 checksum
How to use checksums
52d7dd2cdab50aadbf44c40ae6f4025e0bfb909273ae1a647cc42c3f5b93b765
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp314-cp314-macosx_11_0_arm64.whl

Download URL catzilla-0.2.3-cp314-cp314-macosx_11_0_arm64.whl
Size 854.3 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
6453fcc98e022cf35f7d1caec634adf7ff74953e45f683fc386a7e4f4face1d5
BLAKE2b-256 checksum
How to use checksums
4c01b970540951038ba80a3d5561f21227d4c835e345db869e4194e9da4e9a13
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp314-cp314-macosx_10_15_x86_64.whl

Download URL catzilla-0.2.3-cp314-cp314-macosx_10_15_x86_64.whl
Size 849.9 kB
Tags CPython 3.14 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
0f9c0d361ca0e1a155d9c0e97c387d407750cc119d4bef1d84b9bc117199a695
BLAKE2b-256 checksum
How to use checksums
126d7cd11cb78e3de9654e545d602fb72a108921e9c851fc45edf1774a9c0da0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp313-cp313-win_amd64.whl

Download URL catzilla-0.2.3-cp313-cp313-win_amd64.whl
Size 500.9 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
fa7a8860e82909496709251b275a12615211e72cdb06ec2c66c532ccf62e8f0d
BLAKE2b-256 checksum
How to use checksums
a78b05fad1627aff0b31a8bcac1f8b9c780781085c1e6ee510e51eea4c652275
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL catzilla-0.2.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 3.8 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
1ea2eb642f3ea2451043d1c2296aeeabf56f85308ae7c8254438e49b10600f2a
BLAKE2b-256 checksum
How to use checksums
e156c1e8c12621808c3eb2b42d1b4b4726c94a3f28d32c35817255701b6c673c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp313-cp313-macosx_11_0_arm64.whl

Download URL catzilla-0.2.3-cp313-cp313-macosx_11_0_arm64.whl
Size 854.3 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
cb06fedcf97430d5d871a416503a2f4df83d097caa99344337dcd0b7dfc1f01f
BLAKE2b-256 checksum
How to use checksums
3f153217cb031f33efe3c318f2eb555956ade95f08bfd04df582ba3e0803a85f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp313-cp313-macosx_10_15_x86_64.whl

Download URL catzilla-0.2.3-cp313-cp313-macosx_10_15_x86_64.whl
Size 850.0 kB
Tags CPython 3.13 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
0625740120aa36697577ec75b72ceb3e9b89809091e883660ff1fcb3481db576
BLAKE2b-256 checksum
How to use checksums
86833c955eb0ecdd2517d7b98bfe0d0e7a404d6175d00a1830e1040cf90e26b0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp312-cp312-win_amd64.whl

Download URL catzilla-0.2.3-cp312-cp312-win_amd64.whl
Size 500.9 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
32ee703a1c05ab0ddffc43b26af5cf742ef793b851cb9e544604360b92279664
BLAKE2b-256 checksum
How to use checksums
bcb3a97f664f86d80c085736e6a39b85087eaf46b32fadbf3c3d015c60784838
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL catzilla-0.2.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 3.8 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
2bec3b1cf202eb1e7d749ea29e790bd70c4727f844f8e6e30ac3b3b7ccdff66b
BLAKE2b-256 checksum
How to use checksums
063feb7b34317950be8ec484467ac4ebf3735c23abb385d09f6e6e2e58b96886
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp312-cp312-macosx_11_0_arm64.whl

Download URL catzilla-0.2.3-cp312-cp312-macosx_11_0_arm64.whl
Size 854.3 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
baf307e4c8dabca76e6c36ad4b85149054b0f408a82acf5f610d8dc2cc586dbf
BLAKE2b-256 checksum
How to use checksums
87d7619c9ed8728f399d414e2cb52f6ae49b130077245937eedca965a7ea8aa1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp312-cp312-macosx_10_15_x86_64.whl

Download URL catzilla-0.2.3-cp312-cp312-macosx_10_15_x86_64.whl
Size 849.9 kB
Tags CPython 3.12 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
f397fde86cffaad2e6ce4b02955eba622e9f9ee4d68afdb4b4803842f96cd996
BLAKE2b-256 checksum
How to use checksums
49631c7ceefe2bfec79b666313938f495eee5abfdc923acb72f0fb9c4120c7d5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp311-cp311-win_amd64.whl

Download URL catzilla-0.2.3-cp311-cp311-win_amd64.whl
Size 500.8 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
40cd46f8758792dedc7e3892d6ef3f38bc40b114c51ec7db4bf498ccc3bc40dd
BLAKE2b-256 checksum
How to use checksums
e908ddaa0d47e7155dd7a36303346a9a401a919b0973a2ec65a47198d1293494
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL catzilla-0.2.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 3.8 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
aafde32d025d7933d6f9a831a594cd5bedf03c88d5c9c03f2064938fb1343691
BLAKE2b-256 checksum
How to use checksums
a24be6fdf4e81726ef6c298032ae3b0662b68a3539ac6ae061d6296c662606d5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp311-cp311-macosx_11_0_arm64.whl

Download URL catzilla-0.2.3-cp311-cp311-macosx_11_0_arm64.whl
Size 851.6 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
5d3a02983141a5bd69310fb2ec8ee68850e92fc082c9a85cc91f504f672a906b
BLAKE2b-256 checksum
How to use checksums
9cb3c36d5b40c6c8b1f011f23900fa0ee99d48b0cb070b862741cf7cc4b16d83
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp311-cp311-macosx_10_15_x86_64.whl

Download URL catzilla-0.2.3-cp311-cp311-macosx_10_15_x86_64.whl
Size 845.5 kB
Tags CPython 3.11 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
dd75ab65acb223653a117ba8cd66c4c39717f06961fcd00dba877936fce80da0
BLAKE2b-256 checksum
How to use checksums
62315618189ca1d8aff8476e8ca757a1f57352bd8babe47a8b6b3ea2d4612520
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp310-cp310-win_amd64.whl

Download URL catzilla-0.2.3-cp310-cp310-win_amd64.whl
Size 500.8 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
7e7a2c45a460cee1f4000849baea374dfd2b13d117a91cc023019c3d7e3ad835
BLAKE2b-256 checksum
How to use checksums
95ae4a352f952f723f7c39b8c0d017c224d76e9dccd8febfedc36ecd1119713e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL catzilla-0.2.3-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 3.8 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
2fcdf54a5c99f60ca791a2f36bfc9707a9d3e9d93477e7690c989c59a2d1b2aa
BLAKE2b-256 checksum
How to use checksums
3391d7aba94309736d166e1ba4654dc5c1f7993eb5dc69d3554516743def4d49
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp310-cp310-macosx_11_0_arm64.whl

Download URL catzilla-0.2.3-cp310-cp310-macosx_11_0_arm64.whl
Size 851.5 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
dfa934d3d7abcce11630907fdce59a005721b3b1202a300740484ba63cc16a2e
BLAKE2b-256 checksum
How to use checksums
80065287bde969d3bce93288db5847b45258402e6cf3a59a74052df2d1569aa6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp310-cp310-macosx_10_15_x86_64.whl

Download URL catzilla-0.2.3-cp310-cp310-macosx_10_15_x86_64.whl
Size 845.2 kB
Tags CPython 3.10 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
aa7830e03e0466af614586df08a34539fbd1c858e11eceaabed7936961f1a5dd
BLAKE2b-256 checksum
How to use checksums
8a86dc38e2ab36fb6ed42e5e8122952cce495263833750671e6c1e5af3bff40a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp39-cp39-win_amd64.whl

Download URL catzilla-0.2.3-cp39-cp39-win_amd64.whl
Size 500.9 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
b7c5148adae5d1bee3f45ced382073dd89887bc4298e63ab59d530fd322680a5
BLAKE2b-256 checksum
How to use checksums
5f8af4eafea2dc87d6bbbf8dbc0af910ee352fcf4b70c9c327e2acfabed07a80
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL catzilla-0.2.3-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 3.8 MB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
db967ee7d4d0c6cd1ca2374f638b37711056fa8fc5e4fe5e7b61a60fbb07c979
BLAKE2b-256 checksum
How to use checksums
8972deff08e5c1b1243c70841df586bc8fa5378d82585571b7aaed6731a0f28e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp39-cp39-macosx_11_0_arm64.whl

Download URL catzilla-0.2.3-cp39-cp39-macosx_11_0_arm64.whl
Size 851.4 kB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
5fee25993c366fab285bd9c1c29e5724ccee2c5b636d2088b0dffefed2c88247
BLAKE2b-256 checksum
How to use checksums
4f8c8e176b4d5f062c62b428d22c21713c53843bbcd14c72571f01a844956bbd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release files / catzilla-0.2.3-cp39-cp39-macosx_10_15_x86_64.whl

Download URL catzilla-0.2.3-cp39-cp39-macosx_10_15_x86_64.whl
Size 845.3 kB
Tags CPython 3.9 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
4962170b2b6e244c9d74d9815320d19810985fbb63d693acad0d56ca58bbd196
BLAKE2b-256 checksum
How to use checksums
58a9c6351d3fcefc5336a4d59a1ef830766de490b921189fb390a3dafc6bb64f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 11, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.3 This release

25 release files

0.1.0

21 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