Skip to content

Features

provide.foundation offers a comprehensive toolkit for building robust applications with excellent quality standards.

Quality Standards

provide.foundation maintains high standards for code quality, testing, and reliability:

  • High Test Coverage (>80%) with 1000+ comprehensive tests
  • Extensive 100% coverage of core components and critical modules
  • Comprehensive Security Testing with path traversal, symlink validation, and input sanitization
  • Performance Benchmarked logging, transport, and archive operations
  • Type-Safe Codebase with comprehensive type annotations
  • Automated Quality Checks with ruff, mypy, and bandit

Core Components

Structured Logging

Beautiful, performant logging built on structlog with event-enriched structured logging and zero configuration required.

Key Features: - Zero configuration - works out of the box - Structured event logging with key-value pairs - Performance optimized (>14,000 msg/sec) - Emoji-enhanced visual parsing for quick scanning - Domain-Action-Status pattern support - Automatic exception logging with tracebacks

Learn More: Basic Logging Guide

Metrics

Lightweight and extensible metrics collection with optional OpenTelemetry integration.

Key Features: - Simple counter, gauge, and histogram metrics - OpenTelemetry integration for distributed systems - Low overhead design - Automatic service identification

CLI Framework

Build command-line interfaces with automatic help generation and component registration (requires [cli] extra).

Key Features: - Declarative command registration with @register_command - Automatic help text generation - Built on Click for robust argument parsing - Component-based architecture with the Hub system - Rich console output with colors and formatting

Learn More: CLI Commands Guide

Configuration Management

Flexible configuration system supporting environment variables, files, and runtime updates.

Key Features: - Environment variable support with type coercion - File-based configuration (YAML, JSON, TOML) - Secret file support with file:// prefix - Type-safe configuration classes with attrs - Runtime configuration updates

Error Handling

Comprehensive error handling with retry logic and error boundaries.

Key Features: - Rich error types for different failure modes - Automatic error logging with context - Integration with structured logging - Clear error messages for debugging

Learn More: Exception Logging Guide

Resilience Patterns

Suite of decorators for building reliable applications (retry, circuit breaker, bulkhead).

Key Features: - @retry decorator with exponential backoff - Configurable retry strategies - Exception filtering - Automatic logging of retry attempts

Learn More: Retry Patterns Guide

Concurrency Utilities

High-level utilities for managing asynchronous tasks and thread-safe operations.

Key Features: - Thread-safe registry and component management - Async/await compatible logging - Safe subprocess execution with streaming - Async helper utilities

Cryptographic Utilities

Comprehensive cryptographic operations with modern algorithms and secure defaults (requires [crypto] extra).

Key Features: - Ed25519 and RSA key generation and signing - X.509 certificate generation and management - Secure hash functions (SHA-256, BLAKE2b) - Checksum validation - Prefixed key encoding for easy identification

File Operations

Atomic file operations with format support and safety guarantees.

Key Features: - Atomic writes with temporary files and rename - File watching and change detection - Safe path validation (prevents path traversal) - Symlink attack protection - Format detection and serialization

Archive Operations

Create and extract archives with support for TAR, ZIP, GZIP, and BZIP2 formats.

Key Features: - Deterministic archive creation (reproducible builds) - Secure extraction with path validation - Compression support - Metadata preservation

Serialization

Safe and consistent JSON serialization and deserialization.

Key Features: - Type-safe JSON encoding/decoding - Support for common Python types (datetime, Path, etc.) - Pretty printing support - Consistent formatting

Console I/O

Enhanced console input/output with color support, JSON mode, and interactive prompts.

Key Features: - Color-coded output with pout() and perr() - Interactive prompts with validation - JSON mode for machine-readable output - Progress indicators

Hub and Registry

Central system for managing application components, commands, and resources.

Key Features: - Multi-dimensional component registry - Automatic command discovery - Dependency injection patterns - Component lifecycle management - Context propagation

Additional Utilities

Formatting Utilities

Collection of helpers for formatting text, numbers, and data structures.

Platform Utilities

Cross-platform detection and system information gathering.

Process Execution

Safe subprocess execution with streaming and async support.


Next Steps: - See Use Cases for practical applications - Check Architecture for design philosophy - Start with the Quick Start Tutorial