Dev Utils Package
A collection of 15 reusable Python packages covering logging, caching, DB access, agents, and more.
Overview
Dev Utils Package is a monorepo of 15 framework-agnostic Python packages designed as production-ready building blocks for applications. Rather than re-implementing infrastructure concerns for every new app, each package handles one concern — logging, caching, database access, error handling, job scheduling, agent scaffolding — and applications are assembled by combining only what they need. Packages compose cleanly via shared abstractions (BaseAppException, AbstractDatabase, AbstractCache) so they speak the same language when used together.
Key Features
- 15 standalone installable packages covering the full application infrastructure stack (logging, caching, DB, events, jobs, workflows, notifications, and more)
- Framework-agnostic — integrates with FastAPI, Streamlit, CLI (Typer), and microservice targets
- Optional inter-package integrations that activate automatically when sibling packages are installed, with no mandatory coupling
- LLM-aware caching, MCP-aware resource caching, and composable mixin-based agent base class for AI applications
- Uniform adapter layer (
tool_interface_adapter) normalising REST APIs, CLIs, ML models, gRPC, and WebSockets into a singleAbstractToolinterface - Pre-built wheels in
Dependencies/for offline installation; all packages support editable installs
Technical Decisions
Built entirely in Python 3.11+ with Pydantic v2 as the shared data-modeling layer across the ecosystem. Package boundaries are intentional — each concern is isolated, and optional integration bridges mean sibling packages can interoperate without creating hard dependencies. The LLM-facing packages (abstract_agent, cache_manager, tool_interface_adapter) use composable mixin patterns so callers can opt into capabilities (caching, observability, scheduling) without inheritance overhead. workflow_manager and ui_controller_base sit at the top of the dependency graph as the highest-level application shells.
Packages repositories
Infrastructure & Cross-cutting Concerns
Logger_Package Error-Exception_Handler Cache_manager DB_Package Config_Manager
Connectivity & Extensibility
API_Base_cl Plugin_Loader Event_Dispatcher Notification_manager
Orchestration & Execution
Application-Level Foundations
Abstract_agent Tool_Interface_adapter InOut_Models UI_controlBase