SPOC is a Python framework for building modular monolithic applications. Inspired by Django's app system, it provides automatic module discovery, dependency management, and lifecycle orchestration.
- App-based architecture - Organize code into self-contained, reusable modules
- Automatic discovery - Apps and components are discovered and loaded at runtime
- Dependency management - Define module dependencies with automatic load ordering
- Component registry - Register and retrieve components using decorators
- Lifecycle hooks - Startup and shutdown hooks for proper resource management
- TOML configuration - Simple configuration with
spoc.toml
Requires Python 3.13+
pip install spocfrom pathlib import Path
from spoc import Framework, Schema
# Define your application schema
schema = Schema(
modules=["models", "views"],
dependencies={"views": ["models"]},
)
# Create and run the framework
framework = Framework(
base_dir=Path(__file__).parent,
schema=schema,
)
# Access registered components
print(framework.components.models.values())For detailed documentation, tutorials, and examples:
