Sprout Specification

Architecture

This directory contains technical architecture documentation for Sprout.

What is Architecture Documentation?

Architecture documents explain how Sprout works internally. They describe the design decisions, component interactions, and implementation details that make up the system.

Index

Document Description Status
Overview High-level architecture and design principles Complete
Tenancy The container for tenant state Complete
Tenant Providers Loading tenants from storage Complete
Identity Resolvers Extracting tenant identity from requests Complete
Resolution Hooks When and how tenant resolution occurs Complete
Tenancy Lifecycle Events and listeners during tenant activation Complete
Service Overrides Making Laravel services tenant-aware Complete
Eloquent Integration Tenant-aware models and automatic scoping Complete
Managers & Factories Driver-based factory pattern for extensibility Complete
Exceptions Error handling and exception hierarchy Complete

Extension Packages

The documents above cover Sprout’s core architecture. The following extension packages add additional capabilities: