# Catzilla
Blazing-fast Python web framework with production-grade routing backed by a minimal, event-driven C core
[](https://github.com/rezwanahmedsami/catzilla/actions)
[](https://pypi.org/project/catzilla/)
[](https://pypi.org/project/catzilla/)
[](https://catzilla.rezwanahmedsami.com/)
---
## Overview
<img align="right" src="https://raw.githubusercontent.com/rezwanahmedsami/catzilla/main/logo.png" width="250px" alt="Catzilla Logo" />
Catzilla is a modern Python web framework purpose-built for extreme performance and developer productivity.
At its heart is a sophisticated C HTTP engine—built using **libuv** and **llhttp**—featuring an advanced **trie-based routing system** that delivers O(log n) route lookup performance.
By exposing its speed-focused C core through a clean, Pythonic decorator API, Catzilla gives developers full control with minimal overhead.
Whether you're building **real-time AI applications**, **low-latency APIs**, or **high-throughput microservices**, Catzilla is engineered to deliver maximum efficiency with minimal boilerplate.
<br>
## ✨ Features
### Core Performance
- ⚡ **Hybrid C/Python Core** — Event-driven I/O in C, exposed to Python
- 🔥 **Advanced Trie-Based Routing** — O(log n) lookup with dynamic path parameters
- 🧱 **Zero Boilerplate** — Decorator-style routing: `@app.get(...)`
- 🔁 **Concurrency First** — GIL-aware bindings, supports streaming & WebSockets
- 📦 **Zero Dependencies** — Uses only Python standard library (no pydantic, no bloat!)
### Advanced Routing System
- 🛣️ **Dynamic Path Parameters** — `/users/{user_id}`, `/posts/{post_id}/comments/{comment_id}`
- 🚦 **HTTP Status Code Handling** — 404, 405 Method Not Allowed, 415 Unsupported Media Type
- 🔍 **Route Introspection** — Debug routes, detect conflicts, performance monitoring
- 📊 **Production-Grade Memory Management** — Zero memory leaks, efficient allocation
### Developer Experience
- 🧩 **Modular Architecture** — Add plugins, middleware, or extend protocols easily
- 🧪 **Comprehensive Testing** — 90 tests covering C core and Python integration
- 📖 **Developer-Friendly** — Clear documentation and contribution guidelines
- 🔧 **Method Normalization** — Case-insensitive HTTP methods (`get` → `GET`)
## 🚀 NEW in v0.2.0: Memory Revolution
**The Python Framework That BREAKS THE RULES**
### **"Zero-Python-Overhead Architecture"**
- 🔥 **30-35% Memory Efficiency** — Automatic jemalloc optimization
- ⚡ **C-Speed Allocations** — Specialized arenas for web workloads
- 🎯 **Zero Configuration** — Works automatically out of the box
- 📈 **Gets Faster Over Time** — Adaptive memory management
- 🛡️ **Production Ready** — Graceful fallback to standard malloc
### **Memory Features**
```python
app = Catzilla() # Memory revolution activated!
# 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")
# Automatic optimization - no configuration needed!
```
### **Performance Gains**
- **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:
```bash
pip install catzilla
```
**System Requirements:**
- Python 3.9+ (3.10+ recommended)
- Windows, macOS, or Linux
- No additional dependencies required
**Platform-Specific Features:**
- **Linux/macOS**: jemalloc memory allocator (high performance)
- **Windows**: Standard malloc (reliable performance)
- See [Platform Support Guide](docs/platform_support.md) for details
### Installation Verification
```bash
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:
```bash
# Download specific wheel for your platform from:
# https://github.com/rezwanahmedsami/catzilla/releases/tag/v0.1.0
pip install <downloaded-wheel-file>
```
#### From Source (Development)
For development or contributing:
```bash
# 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.13**
- **CMake 3.15+**
- **C Compiler**: GCC/Clang (Linux/macOS) or MSVC (Windows)
---
## 🚀 Quick Start
Create your first Catzilla app with **Memory Revolution**:
```python
# app.py
from catzilla import (
Catzilla, Request, Response, JSONResponse, BaseModel,
Query, Path, ValidationError
)
from typing import Optional
import asyncio
# Initialize Catzilla
app = Catzilla(
production=False, # Enable development features
show_banner=True, # Show startup banner
log_requests=True # Log requests in development
)
# Data model for validation
class UserCreate(BaseModel):
"""User creation model with auto-validation"""
id: Optional[int] = 1
name: str = "Unknown"
email: Optional[str] = None
# Basic sync route
@app.get("/")
def home(request: Request) -> Response:
"""Home endpoint - SYNC handler"""
return JSONResponse({
"message": "Welcome to Catzilla v0.2.0!",
"framework": "Catzilla v0.2.0",
"router": "C-Accelerated with Async Support",
"handler_type": "sync"
})
# Async route with I/O simulation
@app.get("/async-home")
async def async_home(request: Request) -> Response:
"""Async home endpoint - ASYNC handler"""
await asyncio.sleep(0.1) # Simulate async I/O
return JSONResponse({
"message": "Welcome to Async Catzilla!",
"framework": "Catzilla v0.2.0",
"handler_type": "async",
"async_feature": "Non-blocking I/O"
})
# Route with path parameters and validation
@app.get("/users/{user_id}")
def get_user(request, user_id: int = Path(..., description="User ID", ge=1)) -> Response:
"""Get user by ID with path parameter validation"""
return JSONResponse({
"user_id": user_id,
"message": f"Retrieved user {user_id}",
"handler_type": "sync"
})
# Route with query parameters
@app.get("/search")
def search(
request,
q: str = Query("", description="Search query"),
limit: int = Query(10, ge=1, le=100, description="Results limit")
) -> Response:
"""Search with query parameter validation"""
return JSONResponse({
"query": q,
"limit": limit,
"results": [{"id": i, "title": f"Result {i}"} for i in range(limit)]
})
# POST route with JSON body validation
@app.post("/users")
def create_user(request, user: UserCreate) -> Response:
"""Create user with automatic JSON validation"""
return JSONResponse({
"message": "User created successfully",
"user": {"id": user.id, "name": user.name, "email": user.email}
}, status_code=201)
# Health check
@app.get("/health")
def health_check(request: Request) -> Response:
"""Health check endpoint"""
return JSONResponse({
"status": "healthy",
"version": "0.2.0",
"async_support": "enabled"
})
if __name__ == "__main__":
app.listen(port=8000, host="0.0.0.0")
```
Run your app:
```bash
python app.py
```
Visit `http://localhost:8000` to see your blazing-fast API with **30% memory efficiency** in action! 🚀
### Backward Compatibility
Existing code works unchanged (App is an alias for Catzilla):
```python
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** | ✅ | ✅ | ✅ | ✅ |
### 🔧 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
```bash
# 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
```bash
# 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](SYSTEM_COMPATIBILITY.md).
---
## 📊 Performance Benchmarks
Catzilla v0.2.0 has been extensively benchmarked against other popular Python web frameworks using `wrk` with 100 concurrent connections over 10 seconds across **comprehensive real-world scenarios**.
### 🏗️ Real Server Environment
**Production Server** | **wrk Benchmarking Tool** | **macOS** | **10s duration, 100 connections, 4 threads**
This is authentic benchmark data collected from real testing environments, covering 8 different performance categories.
### 🚀 Exceptional Performance Results
**Massive Throughput Advantage**: Catzilla v0.2.0 delivers **extraordinary performance** across advanced features:
#### Advanced Features Performance
| Feature | Catzilla | FastAPI | Flask | Django | vs FastAPI |
|---------|----------|---------|--------|---------|------------|
| **Dependency Injection** | **34,947** | 5,778 | N/A | 15,080 | **+505% faster** |
| **Database Operations** | **35,984** | 5,721 | 15,221 | N/A | **+529% faster** |
| **Background Tasks** | **32,614** | 4,669 | 15,417 | 1,834 | **+598% faster** |
| **Middleware Processing** | **21,574** | 1,108 | N/A | 15,049 | **+1,847% faster** |
| **Validation** | **17,344** | 4,759 | 16,946 | 15,396 | **+264% faster** |
**Ultra-Low Latency**: Catzilla consistently delivers **significantly lower latency**:
- **Basic Operations**: 5.5ms vs FastAPI's 22.1ms (**75% lower**)
- **Dependency Injection**: 3.1ms vs FastAPI's 17.7ms (**82% lower**)
- **Database Operations**: 3.1ms vs FastAPI's 17.6ms (**82% lower**)
- **Background Tasks**: 3.3ms vs FastAPI's 21.3ms (**85% lower**)
### Performance Summary
- **Peak Performance**: 35,984 RPS (Database Operations)
- **Average Performance**: 24,000+ RPS across all categories
- **Latency Leadership**: 3-6x lower latency than FastAPI
- **Feature Advantage**: Outstanding performance even with complex features
- **Framework Leadership**: Fastest Python web framework across all tested scenarios
> 📋 **[View Complete Performance Report](./PERFORMANCE_REPORT_v0.2.0.md)** - Detailed analysis with technical insights
### 📈 Performance Visualizations
#### Overall Performance Comparison


#### Feature-Specific Performance



*📋 **[View Complete Performance Report](./PERFORMANCE_REPORT_v0.2.0.md)** - Detailed analysis with all benchmark visualizations and technical insights*
### 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](CONTRIBUTING.md).
### Build System
```bash
# 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 test suite includes 90 comprehensive tests covering both C and Python components:
```bash
# 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](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](https://catzilla.rezwanahmedsami.com/)** - Comprehensive guides, API reference, and tutorials
### Quick References
- **[Getting Started Guide](docs/getting-started/quickstart.rst)** - Quick start tutorial
- **[System Compatibility](SYSTEM_COMPATIBILITY.md)** - Platform support and installation guide
- **[Examples](examples/)** - Real-world example applications
- **[Contributing](CONTRIBUTING.md)** - Development guide for contributors
---
## 🤖 Built with the Help of AI Development Partners
<div align="center">
| **Claude Sonnet 4** | **GitHub Copilot** | **Visual Studio Code** |
|:---:|:---:|:---:|
| <img src="https://raw.githubusercontent.com/rezwanahmedsami/catzilla/main/assets/claude_app_icon.png" width="80" alt="Claude Logo"><br>**Technical Guidance** | <img src="https://raw.githubusercontent.com/rezwanahmedsami/catzilla/main/assets/githubcopilot.svg" width="80" alt="GitHub Copilot Logo"><br>**Code Assistance** | <img src="https://raw.githubusercontent.com/rezwanahmedsami/catzilla/main/assets/code-stable.png" width="80" alt="VS Code Logo"><br>**Development Environment** |
</div>
Catzilla was developed with the assistance of cutting-edge AI development tools that enhanced productivity and code quality:
- **[Claude Sonnet 4](https://anthropic.com/)** - Technical consultation for architecture decisions, debugging assistance, and problem-solving guidance
- **[GitHub Copilot](https://github.com/features/copilot)** - Intelligent code suggestions and development acceleration
- **[Visual Studio Code](https://code.visualstudio.com/)** - Primary development environment with integrated AI assistance
*AI partnership accelerated development from an estimated 3-6 months to just 1 week, while maintaining production-grade code quality, comprehensive testing (90 tests), and cross-platform compatibility.*
### Development Approach
- **Human-Driven Architecture**: Core design decisions and technical vision by the developer
- **AI-Assisted Implementation**: Code suggestions, boilerplate generation, and pattern completion
- **Collaborative Debugging**: AI-enhanced problem identification and solution guidance
- **Enhanced Documentation**: AI-supported technical writing and comprehensive guides
*This showcases the potential of human creativity amplified by AI assistance—developer expertise enhanced by intelligent tooling.* 🚀
---
## 👤 Author
**Rezwan Ahmed Sami**
📧 [samiahmed0f0@gmail.com](mailto:samiahmed0f0@gmail.com)
📘 [Facebook](https://www.facebook.com/rezwanahmedsami)
---
## 🪪 License
MIT License — See [`LICENSE`](LICENSE) for full details.
Raw data
{
"_id": null,
"home_page": null,
"name": "catzilla",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": "Rezwan Ahmed Sami <samiahmed0f0@gmail.com>",
"keywords": "web-framework, fast, performance, c-extension, routing, http, asgi, web-server, high-performance, micro-framework",
"author": null,
"author_email": "Rezwan Ahmed Sami <samiahmed0f0@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/b2/b3/c3730e95479eac8d490db80b3ad84526399cbc8e4b89be51cd1337be6773/catzilla-0.2.0.tar.gz",
"platform": null,
"description": "# Catzilla\nBlazing-fast Python web framework with production-grade routing backed by a minimal, event-driven C core\n\n[](https://github.com/rezwanahmedsami/catzilla/actions)\n[](https://pypi.org/project/catzilla/)\n[](https://pypi.org/project/catzilla/)\n[](https://catzilla.rezwanahmedsami.com/)\n\n---\n\n## Overview\n<img align=\"right\" src=\"https://raw.githubusercontent.com/rezwanahmedsami/catzilla/main/logo.png\" width=\"250px\" alt=\"Catzilla Logo\" />\n\nCatzilla is a modern Python web framework purpose-built for extreme performance and developer productivity.\nAt its heart is a sophisticated C HTTP engine\u2014built using **libuv** and **llhttp**\u2014featuring an advanced **trie-based routing system** that delivers O(log n) route lookup performance.\n\nBy exposing its speed-focused C core through a clean, Pythonic decorator API, Catzilla gives developers full control with minimal overhead.\nWhether you're building **real-time AI applications**, **low-latency APIs**, or **high-throughput microservices**, Catzilla is engineered to deliver maximum efficiency with minimal boilerplate.\n\n<br>\n\n\n## \u2728 Features\n\n### Core Performance\n- \u26a1 **Hybrid C/Python Core** \u2014 Event-driven I/O in C, exposed to Python\n- \ud83d\udd25 **Advanced Trie-Based Routing** \u2014 O(log n) lookup with dynamic path parameters\n- \ud83e\uddf1 **Zero Boilerplate** \u2014 Decorator-style routing: `@app.get(...)`\n- \ud83d\udd01 **Concurrency First** \u2014 GIL-aware bindings, supports streaming & WebSockets\n- \ud83d\udce6 **Zero Dependencies** \u2014 Uses only Python standard library (no pydantic, no bloat!)\n\n### Advanced Routing System\n- \ud83d\udee3\ufe0f **Dynamic Path Parameters** \u2014 `/users/{user_id}`, `/posts/{post_id}/comments/{comment_id}`\n- \ud83d\udea6 **HTTP Status Code Handling** \u2014 404, 405 Method Not Allowed, 415 Unsupported Media Type\n- \ud83d\udd0d **Route Introspection** \u2014 Debug routes, detect conflicts, performance monitoring\n- \ud83d\udcca **Production-Grade Memory Management** \u2014 Zero memory leaks, efficient allocation\n\n### Developer Experience\n- \ud83e\udde9 **Modular Architecture** \u2014 Add plugins, middleware, or extend protocols easily\n- \ud83e\uddea **Comprehensive Testing** \u2014 90 tests covering C core and Python integration\n- \ud83d\udcd6 **Developer-Friendly** \u2014 Clear documentation and contribution guidelines\n- \ud83d\udd27 **Method Normalization** \u2014 Case-insensitive HTTP methods (`get` \u2192 `GET`)\n\n## \ud83d\ude80 NEW in v0.2.0: Memory Revolution\n\n**The Python Framework That BREAKS THE RULES**\n\n### **\"Zero-Python-Overhead Architecture\"**\n- \ud83d\udd25 **30-35% Memory Efficiency** \u2014 Automatic jemalloc optimization\n- \u26a1 **C-Speed Allocations** \u2014 Specialized arenas for web workloads\n- \ud83c\udfaf **Zero Configuration** \u2014 Works automatically out of the box\n- \ud83d\udcc8 **Gets Faster Over Time** \u2014 Adaptive memory management\n- \ud83d\udee1\ufe0f **Production Ready** \u2014 Graceful fallback to standard malloc\n\n### **Memory Features**\n```python\napp = Catzilla() # Memory revolution activated!\n\n# Real-time memory statistics\nstats = app.get_memory_stats()\nprint(f\"Memory efficiency: {stats['fragmentation_percent']:.1f}%\")\nprint(f\"Allocated: {stats['allocated_mb']:.2f} MB\")\n\n# Automatic optimization - no configuration needed!\n```\n\n### **Performance Gains**\n- **Request Arena**: Optimized for short-lived request processing\n- **Response Arena**: Efficient response building and serialization\n- **Cache Arena**: Long-lived data with minimal fragmentation\n- **Static Arena**: Static file serving with memory pooling\n- **Task Arena**: Background operations with isolated allocation\n\n---\n\n## \ud83d\udce6 Installation\n\n### Quick Start (Recommended)\n\nInstall Catzilla from PyPI:\n\n```bash\npip install catzilla\n```\n\n**System Requirements:**\n- Python 3.9+ (3.10+ recommended)\n- Windows, macOS, or Linux\n- No additional dependencies required\n\n**Platform-Specific Features:**\n- **Linux/macOS**: jemalloc memory allocator (high performance)\n- **Windows**: Standard malloc (reliable performance)\n- See [Platform Support Guide](docs/platform_support.md) for details\n\n### Installation Verification\n\n```bash\npython -c \"import catzilla; print(f'Catzilla v{catzilla.__version__} installed successfully!')\"\n```\n\n### Alternative Installation Methods\n\n#### From GitHub Releases\nFor specific versions or if PyPI is unavailable:\n\n```bash\n# Download specific wheel for your platform from:\n# https://github.com/rezwanahmedsami/catzilla/releases/tag/v0.1.0\npip install <downloaded-wheel-file>\n```\n\n#### From Source (Development)\nFor development or contributing:\n\n```bash\n# Clone with submodules\ngit clone --recursive https://github.com/rezwanahmedsami/catzilla.git\ncd catzilla\n\n# Create virtual environment\npython -m venv venv\nsource venv/bin/activate # On Windows: venv\\Scripts\\activate\n\n# Install in development mode\npip install -e .\n```\n\n**Build Requirements (Source Only):**\n- **Python 3.9-3.13**\n- **CMake 3.15+**\n- **C Compiler**: GCC/Clang (Linux/macOS) or MSVC (Windows)\n\n---\n\n## \ud83d\ude80 Quick Start\n\nCreate your first Catzilla app with **Memory Revolution**:\n\n```python\n# app.py\nfrom catzilla import (\n Catzilla, Request, Response, JSONResponse, BaseModel,\n Query, Path, ValidationError\n)\nfrom typing import Optional\nimport asyncio\n\n# Initialize Catzilla\napp = Catzilla(\n production=False, # Enable development features\n show_banner=True, # Show startup banner\n log_requests=True # Log requests in development\n)\n\n# Data model for validation\nclass UserCreate(BaseModel):\n \"\"\"User creation model with auto-validation\"\"\"\n id: Optional[int] = 1\n name: str = \"Unknown\"\n email: Optional[str] = None\n\n# Basic sync route\n@app.get(\"/\")\ndef home(request: Request) -> Response:\n \"\"\"Home endpoint - SYNC handler\"\"\"\n return JSONResponse({\n \"message\": \"Welcome to Catzilla v0.2.0!\",\n \"framework\": \"Catzilla v0.2.0\",\n \"router\": \"C-Accelerated with Async Support\",\n \"handler_type\": \"sync\"\n })\n\n# Async route with I/O simulation\n@app.get(\"/async-home\")\nasync def async_home(request: Request) -> Response:\n \"\"\"Async home endpoint - ASYNC handler\"\"\"\n await asyncio.sleep(0.1) # Simulate async I/O\n return JSONResponse({\n \"message\": \"Welcome to Async Catzilla!\",\n \"framework\": \"Catzilla v0.2.0\",\n \"handler_type\": \"async\",\n \"async_feature\": \"Non-blocking I/O\"\n })\n\n# Route with path parameters and validation\n@app.get(\"/users/{user_id}\")\ndef get_user(request, user_id: int = Path(..., description=\"User ID\", ge=1)) -> Response:\n \"\"\"Get user by ID with path parameter validation\"\"\"\n return JSONResponse({\n \"user_id\": user_id,\n \"message\": f\"Retrieved user {user_id}\",\n \"handler_type\": \"sync\"\n })\n\n# Route with query parameters\n@app.get(\"/search\")\ndef search(\n request,\n q: str = Query(\"\", description=\"Search query\"),\n limit: int = Query(10, ge=1, le=100, description=\"Results limit\")\n) -> Response:\n \"\"\"Search with query parameter validation\"\"\"\n return JSONResponse({\n \"query\": q,\n \"limit\": limit,\n \"results\": [{\"id\": i, \"title\": f\"Result {i}\"} for i in range(limit)]\n })\n\n# POST route with JSON body validation\n@app.post(\"/users\")\ndef create_user(request, user: UserCreate) -> Response:\n \"\"\"Create user with automatic JSON validation\"\"\"\n return JSONResponse({\n \"message\": \"User created successfully\",\n \"user\": {\"id\": user.id, \"name\": user.name, \"email\": user.email}\n }, status_code=201)\n\n# Health check\n@app.get(\"/health\")\ndef health_check(request: Request) -> Response:\n \"\"\"Health check endpoint\"\"\"\n return JSONResponse({\n \"status\": \"healthy\",\n \"version\": \"0.2.0\",\n \"async_support\": \"enabled\"\n })\n\nif __name__ == \"__main__\":\n app.listen(port=8000, host=\"0.0.0.0\")\n```\n\nRun your app:\n\n```bash\npython app.py\n```\n\nVisit `http://localhost:8000` to see your blazing-fast API with **30% memory efficiency** in action! \ud83d\ude80\n\n### Backward Compatibility\n\nExisting code works unchanged (App is an alias for Catzilla):\n\n```python\nfrom catzilla import App # Still works!\napp = App() # Same memory benefits\n```\n\n---\n\n## \ud83d\udda5\ufe0f System Compatibility\n\nCatzilla provides comprehensive cross-platform support with pre-built wheels for all major operating systems and Python versions.\n\n### \ud83d\udccb Supported Platforms\n\n| Platform | Architecture | Status | Wheel Available |\n|----------|-------------|---------|-----------------|\n| **Linux** | x86_64 | \u2705 Full Support | \u2705 manylinux2014 |\n| **macOS** | x86_64 (Intel) | \u2705 Full Support | \u2705 macOS 10.15+ |\n| **macOS** | ARM64 (Apple Silicon) | \u2705 Full Support | \u2705 macOS 11.0+ |\n| **Windows** | x86_64 | \u2705 Full Support | \u2705 Windows 10+ |\n| **Linux** | ARM64 | \u26a0\ufe0f Source Only* | \u274c No pre-built wheel |\n\n*\\*ARM64 Linux requires building from source with proper build tools installed.*\n\n### \ud83d\udc0d Python Version Support\n\n| Python Version | Linux x86_64 | macOS Intel | macOS ARM64 | Windows |\n|----------------|--------------|-------------|-------------|---------|\n| **3.9** | \u2705 | \u2705 | \u2705 | \u2705 |\n| **3.10** | \u2705 | \u2705 | \u2705 | \u2705 |\n| **3.11** | \u2705 | \u2705 | \u2705 | \u2705 |\n| **3.12** | \u2705 | \u2705 | \u2705 | \u2705 |\n| **3.13** | \u2705 | \u2705 | \u2705 | \u2705 |\n\n### \ud83d\udd27 Installation Methods by Platform\n\n#### \u2705 Pre-built Wheels (Recommended)\n- **Instant installation** with zero compilation time\n- **No build dependencies** required (CMake, compilers, etc.)\n- **Optimized binaries** for maximum performance\n- Available for: Linux x86_64, macOS (Intel/ARM64), Windows x86_64\n\n```bash\n# Automatic platform detection\npip install <wheel-url-from-releases>\n```\n\n#### \ud83d\udee0\ufe0f Source Installation\n- **Build from source** when pre-built wheels aren't available\n- **Requires build tools**: CMake 3.15+, C compiler, Python headers\n- **Longer installation time** due to compilation\n\n```bash\n# For ARM64 Linux or custom builds\npip install https://github.com/rezwanahmedsami/catzilla/releases/download/vx.x.x/catzilla-x.x.x.tar.gz\n```\n\n### \u26a1 Performance Notes\n\n- **Native performance** on all supported platforms\n- **Architecture-specific optimizations** in pre-built wheels\n- **Cross-platform C core** ensures consistent behavior\n- **Platform-specific wheel tags** for optimal compatibility\n\nFor detailed compatibility information, see [SYSTEM_COMPATIBILITY.md](SYSTEM_COMPATIBILITY.md).\n\n---\n\n## \ud83d\udcca Performance Benchmarks\n\nCatzilla v0.2.0 has been extensively benchmarked against other popular Python web frameworks using `wrk` with 100 concurrent connections over 10 seconds across **comprehensive real-world scenarios**.\n\n### \ud83c\udfd7\ufe0f Real Server Environment\n**Production Server** | **wrk Benchmarking Tool** | **macOS** | **10s duration, 100 connections, 4 threads**\n\nThis is authentic benchmark data collected from real testing environments, covering 8 different performance categories.\n\n### \ud83d\ude80 Exceptional Performance Results\n\n**Massive Throughput Advantage**: Catzilla v0.2.0 delivers **extraordinary performance** across advanced features:\n\n#### Advanced Features Performance\n| Feature | Catzilla | FastAPI | Flask | Django | vs FastAPI |\n|---------|----------|---------|--------|---------|------------|\n| **Dependency Injection** | **34,947** | 5,778 | N/A | 15,080 | **+505% faster** |\n| **Database Operations** | **35,984** | 5,721 | 15,221 | N/A | **+529% faster** |\n| **Background Tasks** | **32,614** | 4,669 | 15,417 | 1,834 | **+598% faster** |\n| **Middleware Processing** | **21,574** | 1,108 | N/A | 15,049 | **+1,847% faster** |\n| **Validation** | **17,344** | 4,759 | 16,946 | 15,396 | **+264% faster** |\n\n**Ultra-Low Latency**: Catzilla consistently delivers **significantly lower latency**:\n- **Basic Operations**: 5.5ms vs FastAPI's 22.1ms (**75% lower**)\n- **Dependency Injection**: 3.1ms vs FastAPI's 17.7ms (**82% lower**)\n- **Database Operations**: 3.1ms vs FastAPI's 17.6ms (**82% lower**)\n- **Background Tasks**: 3.3ms vs FastAPI's 21.3ms (**85% lower**)\n\n### Performance Summary\n- **Peak Performance**: 35,984 RPS (Database Operations)\n- **Average Performance**: 24,000+ RPS across all categories\n- **Latency Leadership**: 3-6x lower latency than FastAPI\n- **Feature Advantage**: Outstanding performance even with complex features\n- **Framework Leadership**: Fastest Python web framework across all tested scenarios\n\n> \ud83d\udccb **[View Complete Performance Report](./PERFORMANCE_REPORT_v0.2.0.md)** - Detailed analysis with technical insights\n\n### \ud83d\udcc8 Performance Visualizations\n\n#### Overall Performance Comparison\n\n\n\n\n\n\n#### Feature-Specific Performance\n\n\n\n\n\n\n\n*\ud83d\udccb **[View Complete Performance Report](./PERFORMANCE_REPORT_v0.2.0.md)** - Detailed analysis with all benchmark visualizations and technical insights*\n\n### When to Choose Catzilla\n- \u26a1 **High-throughput requirements** (API gateways, microservices, data pipelines)\n- \ud83c\udfaf **Low-latency critical** applications (real-time APIs, financial trading, gaming backends)\n- \ud83e\uddec **Resource efficiency** (cloud computing, embedded systems, edge computing)\n- \ud83d\ude80 **C-level performance** with Python developer experience\n\n*Note: Comprehensive benchmark suite with automated testing available in `benchmarks/` directory.*\n\n---\n\n## \ud83d\udd27 Development\n\nFor detailed development instructions, see [CONTRIBUTING.md](CONTRIBUTING.md).\n\n### Build System\n\n```bash\n# Complete build (recommended)\n./scripts/build.sh\n\n# Manual CMake build\ncmake -S . -B build -DCMAKE_BUILD_TYPE=Debug\ncmake --build build -j$(nproc)\npip install -e .\n```\n\n### Testing\n\nThe test suite includes 90 comprehensive tests covering both C and Python components:\n\n```bash\n# Run all tests ( C + Python Unit + e2e)\n./scripts/run_tests.sh\n\n# Run specific test suites\n./scripts/run_tests.sh --python # Python Unit tests only\n./scripts/run_tests.sh --c # C tests only\n./scripts/run_tests.sh --e2e # e2e tests only\n./scripts/run_tests.sh --verbose # Detailed output\n```\n\n### Performance Features\n\n- **Trie-Based Routing**: O(log n) average case lookup performance\n- **Memory Efficient**: Zero memory leaks, optimized allocation patterns\n- **Route Conflict Detection**: Warns about potentially overlapping routes during development\n- **Method Normalization**: Case-insensitive HTTP methods with automatic uppercase conversion\n- **Parameter Injection**: Automatic extraction and injection of path parameters to handlers\n\n## \ud83c\udfaf Performance Characteristics\n\n- **Route Lookup**: O(log n) average case with advanced trie data structure\n- **Memory Management**: Zero memory leaks with efficient recursive cleanup\n- **Scalability**: Tested with 100+ routes without performance degradation\n- **Concurrency**: Thread-safe design ready for production workloads\n- **HTTP Processing**: Built on libuv and llhttp for maximum throughput\n\n## \ud83e\udd1d Contributing\n\nWe welcome contributions! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for detailed guidelines on:\n\n- Setting up the development environment\n- Building and testing the project\n- Code style and conventions\n- Submitting pull requests\n- Debugging and performance optimization\n\n## \ud83d\udcda Documentation\n\n\ud83d\udcd6 **[Complete Documentation](https://catzilla.rezwanahmedsami.com/)** - Comprehensive guides, API reference, and tutorials\n\n### Quick References\n- **[Getting Started Guide](docs/getting-started/quickstart.rst)** - Quick start tutorial\n- **[System Compatibility](SYSTEM_COMPATIBILITY.md)** - Platform support and installation guide\n- **[Examples](examples/)** - Real-world example applications\n- **[Contributing](CONTRIBUTING.md)** - Development guide for contributors\n\n---\n\n## \ud83e\udd16 Built with the Help of AI Development Partners\n\n<div align=\"center\">\n\n| **Claude Sonnet 4** | **GitHub Copilot** | **Visual Studio Code** |\n|:---:|:---:|:---:|\n| <img src=\"https://raw.githubusercontent.com/rezwanahmedsami/catzilla/main/assets/claude_app_icon.png\" width=\"80\" alt=\"Claude Logo\"><br>**Technical Guidance** | <img src=\"https://raw.githubusercontent.com/rezwanahmedsami/catzilla/main/assets/githubcopilot.svg\" width=\"80\" alt=\"GitHub Copilot Logo\"><br>**Code Assistance** | <img src=\"https://raw.githubusercontent.com/rezwanahmedsami/catzilla/main/assets/code-stable.png\" width=\"80\" alt=\"VS Code Logo\"><br>**Development Environment** |\n\n</div>\n\nCatzilla was developed with the assistance of cutting-edge AI development tools that enhanced productivity and code quality:\n\n- **[Claude Sonnet 4](https://anthropic.com/)** - Technical consultation for architecture decisions, debugging assistance, and problem-solving guidance\n- **[GitHub Copilot](https://github.com/features/copilot)** - Intelligent code suggestions and development acceleration\n- **[Visual Studio Code](https://code.visualstudio.com/)** - Primary development environment with integrated AI assistance\n\n*AI partnership accelerated development from an estimated 3-6 months to just 1 week, while maintaining production-grade code quality, comprehensive testing (90 tests), and cross-platform compatibility.*\n\n### Development Approach\n- **Human-Driven Architecture**: Core design decisions and technical vision by the developer\n- **AI-Assisted Implementation**: Code suggestions, boilerplate generation, and pattern completion\n- **Collaborative Debugging**: AI-enhanced problem identification and solution guidance\n- **Enhanced Documentation**: AI-supported technical writing and comprehensive guides\n\n*This showcases the potential of human creativity amplified by AI assistance\u2014developer expertise enhanced by intelligent tooling.* \ud83d\ude80\n\n---\n\n## \ud83d\udc64 Author\n\n**Rezwan Ahmed Sami**\n\ud83d\udce7 [samiahmed0f0@gmail.com](mailto:samiahmed0f0@gmail.com)\n\ud83d\udcd8 [Facebook](https://www.facebook.com/rezwanahmedsami)\n\n---\n\n## \ud83e\udeaa License\n\nMIT License \u2014 See [`LICENSE`](LICENSE) for full details.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Ultra-fast Python web framework with C-accelerated routing",
"version": "0.2.0",
"project_urls": {
"Bug Tracker": "https://github.com/rezwanahmedsami/catzilla/issues",
"Changelog": "https://github.com/rezwanahmedsami/catzilla/blob/main/CHANGELOG.md",
"Documentation": "https://catzilla.rezwanahmedsami.com/",
"Homepage": "https://github.com/rezwanahmedsami/catzilla",
"Performance Report": "https://github.com/rezwanahmedsami/catzilla/blob/main/PERFORMANCE_REPORT_v0.1.0.md",
"Repository": "https://github.com/rezwanahmedsami/catzilla",
"Source Code": "https://github.com/rezwanahmedsami/catzilla"
},
"split_keywords": [
"web-framework",
" fast",
" performance",
" c-extension",
" routing",
" http",
" asgi",
" web-server",
" high-performance",
" micro-framework"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "2cd3419b61c936fcd9278b75beafed82594e98b20c9f20dedff1c007a3b5dc73",
"md5": "36a2f94ca512009b935976e3bc434c90",
"sha256": "06ea18d3b8067d23767d8fefe4a45eeeda61dc32809f687b87d88268e475fdb1"
},
"downloads": -1,
"filename": "catzilla-0.2.0-cp310-cp310-macosx_10_15_x86_64.whl",
"has_sig": false,
"md5_digest": "36a2f94ca512009b935976e3bc434c90",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 839737,
"upload_time": "2025-09-02T13:37:35",
"upload_time_iso_8601": "2025-09-02T13:37:35.936879Z",
"url": "https://files.pythonhosted.org/packages/2c/d3/419b61c936fcd9278b75beafed82594e98b20c9f20dedff1c007a3b5dc73/catzilla-0.2.0-cp310-cp310-macosx_10_15_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "f72a92a80f31a4356a745f515fdf1446eb3eca72cf70c1cb3d1a9b4471b4a2f1",
"md5": "b62d36dfdcbc03a7460fa9449f4b5afd",
"sha256": "1a755adce042291fe7a08c79cc85daa71a3d62289e8bb26c58f99f9d24c63584"
},
"downloads": -1,
"filename": "catzilla-0.2.0-cp310-cp310-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "b62d36dfdcbc03a7460fa9449f4b5afd",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 846849,
"upload_time": "2025-09-02T13:37:37",
"upload_time_iso_8601": "2025-09-02T13:37:37.992877Z",
"url": "https://files.pythonhosted.org/packages/f7/2a/92a80f31a4356a745f515fdf1446eb3eca72cf70c1cb3d1a9b4471b4a2f1/catzilla-0.2.0-cp310-cp310-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "7757720bb5e6436ee379bd78b290e6cd9454d710dbf2bea01229bfce2e7be17c",
"md5": "dcd2698ec1e50b7aef7cede292ebef49",
"sha256": "e81c829cb9a4172e97881a4d05287aa431eb070b3a3b599ea817f632a4dfd00b"
},
"downloads": -1,
"filename": "catzilla-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "dcd2698ec1e50b7aef7cede292ebef49",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 3775450,
"upload_time": "2025-09-02T13:37:40",
"upload_time_iso_8601": "2025-09-02T13:37:40.002288Z",
"url": "https://files.pythonhosted.org/packages/77/57/720bb5e6436ee379bd78b290e6cd9454d710dbf2bea01229bfce2e7be17c/catzilla-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "89b98ec39d863dbfd03015ff90c2b85a595a1a381a184184e41537b201cd0bfd",
"md5": "ae73d40db16f4d93642795e5bd9cf673",
"sha256": "7d3fc93010e7e975fae6c34e5dada5e2116687918acb22591432cfd3fe059845"
},
"downloads": -1,
"filename": "catzilla-0.2.0-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "ae73d40db16f4d93642795e5bd9cf673",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.9",
"size": 326533,
"upload_time": "2025-09-02T13:37:41",
"upload_time_iso_8601": "2025-09-02T13:37:41.698365Z",
"url": "https://files.pythonhosted.org/packages/89/b9/8ec39d863dbfd03015ff90c2b85a595a1a381a184184e41537b201cd0bfd/catzilla-0.2.0-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "283102c4f678fa783b8c48f268be2b3f1a11f97d1a6d77630a21303bfaeb81fd",
"md5": "e426398958536fc1fb8d52b44b60221a",
"sha256": "35b1a914cfe120cea37a8403c96ff022f4683ed07e0218a17b8dd7c46fd42795"
},
"downloads": -1,
"filename": "catzilla-0.2.0-cp311-cp311-macosx_10_15_x86_64.whl",
"has_sig": false,
"md5_digest": "e426398958536fc1fb8d52b44b60221a",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 839940,
"upload_time": "2025-09-02T13:37:43",
"upload_time_iso_8601": "2025-09-02T13:37:43.462200Z",
"url": "https://files.pythonhosted.org/packages/28/31/02c4f678fa783b8c48f268be2b3f1a11f97d1a6d77630a21303bfaeb81fd/catzilla-0.2.0-cp311-cp311-macosx_10_15_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "e028d8048a9066ae76da3e45cd504a6dce957211879bcc46aa9930254e072113",
"md5": "bf65c25d050b0f7c29b6567238cda1fa",
"sha256": "20b4763892a199fe70db2f4e41a2dd7cdf4c9a094839d581650b358b129940fb"
},
"downloads": -1,
"filename": "catzilla-0.2.0-cp311-cp311-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "bf65c25d050b0f7c29b6567238cda1fa",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 846937,
"upload_time": "2025-09-02T13:37:44",
"upload_time_iso_8601": "2025-09-02T13:37:44.917845Z",
"url": "https://files.pythonhosted.org/packages/e0/28/d8048a9066ae76da3e45cd504a6dce957211879bcc46aa9930254e072113/catzilla-0.2.0-cp311-cp311-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "ed976d9b0cb432a17f42b496b75f953bff8b000576f6968c4e8858e8537deaa2",
"md5": "ccf8e050f2ba9040c193cc8460925d52",
"sha256": "98dc8da52e83aa2ce1ffe0e5e13c9d13227bf7e9490c34548987a96a3b0dd971"
},
"downloads": -1,
"filename": "catzilla-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "ccf8e050f2ba9040c193cc8460925d52",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 3777694,
"upload_time": "2025-09-02T13:37:46",
"upload_time_iso_8601": "2025-09-02T13:37:46.711858Z",
"url": "https://files.pythonhosted.org/packages/ed/97/6d9b0cb432a17f42b496b75f953bff8b000576f6968c4e8858e8537deaa2/catzilla-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "fef400d7426b9845af13879c3d1897db9011a3274b405abe2991043d1f8d0117",
"md5": "02ac94991cbe846896f73a2367c048ed",
"sha256": "e6e56153f4ed3ffc7956b789f13be8acf759799cbea957b8859ce5f1ccae419e"
},
"downloads": -1,
"filename": "catzilla-0.2.0-cp311-cp311-win_amd64.whl",
"has_sig": false,
"md5_digest": "02ac94991cbe846896f73a2367c048ed",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.9",
"size": 326547,
"upload_time": "2025-09-02T13:37:48",
"upload_time_iso_8601": "2025-09-02T13:37:48.786504Z",
"url": "https://files.pythonhosted.org/packages/fe/f4/00d7426b9845af13879c3d1897db9011a3274b405abe2991043d1f8d0117/catzilla-0.2.0-cp311-cp311-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "10bfa45de0ea561e96f0bcbade917948e96eca885da34142625901f701a03693",
"md5": "14df8e1ff8746ee96a3fb0aab46d0358",
"sha256": "56313e5e3e7d9dffa7a4622ef98ba2957072da27906eaaf03d0d81f0d46a451e"
},
"downloads": -1,
"filename": "catzilla-0.2.0-cp312-cp312-macosx_10_15_x86_64.whl",
"has_sig": false,
"md5_digest": "14df8e1ff8746ee96a3fb0aab46d0358",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 842858,
"upload_time": "2025-09-02T13:37:50",
"upload_time_iso_8601": "2025-09-02T13:37:50.095207Z",
"url": "https://files.pythonhosted.org/packages/10/bf/a45de0ea561e96f0bcbade917948e96eca885da34142625901f701a03693/catzilla-0.2.0-cp312-cp312-macosx_10_15_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "c2d4ffc8b045b5c6d98cd7c67340dedbe4ed86168932603714e3dca5d83d609a",
"md5": "bd430d32c3c6b431a8e349ef97a5805e",
"sha256": "74411b612c128228ac409bd55be59a7255214569b9a546c2b00042b61bb2e136"
},
"downloads": -1,
"filename": "catzilla-0.2.0-cp312-cp312-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "bd430d32c3c6b431a8e349ef97a5805e",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 848929,
"upload_time": "2025-09-02T13:37:51",
"upload_time_iso_8601": "2025-09-02T13:37:51.686573Z",
"url": "https://files.pythonhosted.org/packages/c2/d4/ffc8b045b5c6d98cd7c67340dedbe4ed86168932603714e3dca5d83d609a/catzilla-0.2.0-cp312-cp312-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "42e1ae47dbf75506c6ef78df4fcf573b7b2a4416fbef5ebf2d85d137e02d9871",
"md5": "46dddf1635b9cd6abc36518c707f5178",
"sha256": "1f927de1acb8714028b4c817544db15348bdb42f35dd6c847fd8e0f7b8ae90ab"
},
"downloads": -1,
"filename": "catzilla-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "46dddf1635b9cd6abc36518c707f5178",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 3783627,
"upload_time": "2025-09-02T13:37:53",
"upload_time_iso_8601": "2025-09-02T13:37:53.645583Z",
"url": "https://files.pythonhosted.org/packages/42/e1/ae47dbf75506c6ef78df4fcf573b7b2a4416fbef5ebf2d85d137e02d9871/catzilla-0.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "33aaaa2b6520f6f42899907b508fd928e98bf2083c43c5ab74a94f518ef0fb2e",
"md5": "9ca1e084a3e6f2698b89993b5749f9eb",
"sha256": "12870589c0ab65765c0ab5e1b2d92217252227867f59e1c2c55077e5f7518c2d"
},
"downloads": -1,
"filename": "catzilla-0.2.0-cp312-cp312-win_amd64.whl",
"has_sig": false,
"md5_digest": "9ca1e084a3e6f2698b89993b5749f9eb",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.9",
"size": 326807,
"upload_time": "2025-09-02T13:37:56",
"upload_time_iso_8601": "2025-09-02T13:37:56.436403Z",
"url": "https://files.pythonhosted.org/packages/33/aa/aa2b6520f6f42899907b508fd928e98bf2083c43c5ab74a94f518ef0fb2e/catzilla-0.2.0-cp312-cp312-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "63b0d06f94fafa03565de4ae3116c1124677489acee5611cc7882b374fb28e7d",
"md5": "88bd5ee1e1f04b0a69afe07d3d5bea72",
"sha256": "a943b1d5a5d0e402334bb5cc72fa6866d02569c79dd266a53ea3c4d3fbf01cda"
},
"downloads": -1,
"filename": "catzilla-0.2.0-cp39-cp39-macosx_10_15_x86_64.whl",
"has_sig": false,
"md5_digest": "88bd5ee1e1f04b0a69afe07d3d5bea72",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 839803,
"upload_time": "2025-09-02T13:37:59",
"upload_time_iso_8601": "2025-09-02T13:37:59.880038Z",
"url": "https://files.pythonhosted.org/packages/63/b0/d06f94fafa03565de4ae3116c1124677489acee5611cc7882b374fb28e7d/catzilla-0.2.0-cp39-cp39-macosx_10_15_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "ca3df8b53a3a9b41c5682e84d4a8868d353a0a4511b5060e0fcfa78493414f19",
"md5": "dfb91aee5fab983fe42638cec1b9c760",
"sha256": "915e4e3f30076e2b2cbfe709c5f1e22b4962416588e890e6379f8237d151baca"
},
"downloads": -1,
"filename": "catzilla-0.2.0-cp39-cp39-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "dfb91aee5fab983fe42638cec1b9c760",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 846823,
"upload_time": "2025-09-02T13:38:02",
"upload_time_iso_8601": "2025-09-02T13:38:02.084632Z",
"url": "https://files.pythonhosted.org/packages/ca/3d/f8b53a3a9b41c5682e84d4a8868d353a0a4511b5060e0fcfa78493414f19/catzilla-0.2.0-cp39-cp39-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "3f1d65ec0b891acf1cae05347652a12239da65713e19e27f2e078b9746ee1650",
"md5": "a3e6e94456a9a44e2328dddbc3804b45",
"sha256": "110e766071ae977088eb8b3a04acef0828548781a5a708fe15db3e07243f59d5"
},
"downloads": -1,
"filename": "catzilla-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "a3e6e94456a9a44e2328dddbc3804b45",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 3775233,
"upload_time": "2025-09-02T13:38:04",
"upload_time_iso_8601": "2025-09-02T13:38:04.151681Z",
"url": "https://files.pythonhosted.org/packages/3f/1d/65ec0b891acf1cae05347652a12239da65713e19e27f2e078b9746ee1650/catzilla-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "5a1f24b170765ea7c87f1e2d9349b34f131814315c8a05b9beb3d6f0278a6b2c",
"md5": "dfea7b37407ea9a0b48bb8ab0ce90df0",
"sha256": "76d1cbc99c0d5bf3b9182385c78c354da69c8e570253c66e0a3ccd9f62594de0"
},
"downloads": -1,
"filename": "catzilla-0.2.0-cp39-cp39-win_amd64.whl",
"has_sig": false,
"md5_digest": "dfea7b37407ea9a0b48bb8ab0ce90df0",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.9",
"size": 326678,
"upload_time": "2025-09-02T13:38:05",
"upload_time_iso_8601": "2025-09-02T13:38:05.803475Z",
"url": "https://files.pythonhosted.org/packages/5a/1f/24b170765ea7c87f1e2d9349b34f131814315c8a05b9beb3d6f0278a6b2c/catzilla-0.2.0-cp39-cp39-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "b2b3c3730e95479eac8d490db80b3ad84526399cbc8e4b89be51cd1337be6773",
"md5": "f0a70908ab1f6d78f8095c4b0f7602a0",
"sha256": "f0ac2226c2746360e5a0e92ea039de4dc5c37ef1baddaae05875ad261a3a2ee9"
},
"downloads": -1,
"filename": "catzilla-0.2.0.tar.gz",
"has_sig": false,
"md5_digest": "f0a70908ab1f6d78f8095c4b0f7602a0",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 3235548,
"upload_time": "2025-09-02T13:38:07",
"upload_time_iso_8601": "2025-09-02T13:38:07.893600Z",
"url": "https://files.pythonhosted.org/packages/b2/b3/c3730e95479eac8d490db80b3ad84526399cbc8e4b89be51cd1337be6773/catzilla-0.2.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-09-02 13:38:07",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "rezwanahmedsami",
"github_project": "catzilla",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "psutil",
"specs": [
[
">=",
"5.9.0"
]
]
}
],
"lcname": "catzilla"
}