Skip to content

Sillo Internal Engineering Documentation

How Sillo works internally, documented subsystem by subsystem.

Version: 2026-08-11 Audience: Core maintainers, contributors, senior engineers, framework architects Purpose: Preserve deep institutional knowledge about how Sillo works internally


#DocumentDescription
01Architecture OverviewSystem layers, boundaries, component relationships, dependency graph
02Application LifecycleSilloApp, ASGI lifespan, startup/shutdown, state management
03Configuration SystemConfig class, .env loading, secret masking, environment variables
04Type System & EncodingCore type aliases, jsonable_encoder, custom encoders, serialization
#DocumentDescription
05Routing SystemRoute compilation, path matching, typed converters, groups, mounted routers
06Middleware PipelineBaseMiddleware, ASGI bridge, middleware chain, execution order
07HTTP RequestHTTPConnection, Request, body parsing, form data, file uploads
08HTTP ResponseBaseResponse, JSON/File/Streaming/Redirect responses, Responder pattern
09HTTP CorrectnessContent negotiation, ETags, range requests, HTTP client
10Exception HandlingException hierarchy, ExceptionMiddleware, error handlers, status codes

Part III: Dependency Injection & Validation

Section titled “Part III: Dependency Injection & Validation”
#DocumentDescription
11Dependency InjectionDepend(), Dependant tree, execution plan, resolution algorithm
12Parameter ExtractionQuery/Header/Cookie/Path/Form/File markers, dual-mode validation
13Validation SystemPydantic compilation, LocationSpec, CompiledValidator, error accumulation
14OpenAPI GenerationSchema building, security schemes, documentation UIs, route iteration
#DocumentDescription
15Authentication ArchitectureuseAuth, AuthenticationBackend, AuthenticationMiddleware, scheme handling
16Auth BackendsSession auth, JWT auth, API key auth, token lifecycle
17User SystemUserProtocol, UserBaseModel, UserManager, SimpleUser, mixins
18Permissions & GroupsPermission model, groups, PermissionMixin, cache, authorization flow
19Password HashingSchemes (bcrypt/argon2/scrypt/pbkdf2), verification, password utilities
#DocumentDescription
20Security MiddlewareShield (headers), CORS, CSRF, rate limiting strategies and backends
#DocumentDescription
21Record ORM - ModelsModel class, fields, mixins, casting, serialization, soft deletes
22Record ORM - QueriesRecordQuerySet, scopes, RecordManager, query helpers, pagination
23Record ORM - TransactionsTransaction context, savepoints, manual control, DatabaseManager
24Record ORM - MigrationsMigration commands, MigrationHelper, bridge module, console commands
25Record ORM - Factories & SeedersFactory, FactoryBuilder, Seeder, FixtureLoader, test data generation
#DocumentDescription
26Work - Task SystemTask class, lifecycle, priorities, hooks, serialization
27Work - Queue SystemQueue backends, job dispatch, workers, middleware, batches, failed jobs
28Work - SchedulerCron parser, triggers, scheduler manager, middleware
29Work - Background TasksBackgroundTask, Supervisor, restart policies, circuit breaker
#DocumentDescription
30Events SystemEvent, EventEmitter, transports (memory/redis/persistent/record), propagation
31WebSocketsWebSocket state machine, consumers, channels, groups, history
#DocumentDescription
32Session ManagementSessionMiddleware, cookie/file backends, Session object, config
33Cache SystemMemoryCache, RedisCache, @cache decorator, serialization, tags
34TemplatingJinja2 integration, TemplateEngine, middleware, context injection
35Mail ServiceMailClient, SMTP, templates, attachments, config
36Console FrameworkCommand, Console, arguments/options/flags, output, prompts, terminal
37Admin PanelAdminSite, registry, routes, auth, activity log, default user model
38PaginationStrategies (PageNumber/LimitOffset/Cursor), data handlers, paginators
#DocumentDescription
39Test ClientSync/async ASGI test clients, transport, WebSocket testing, helpers
40Helpers & UtilitiesFiles, retry, crypto, JWT, network, HTML, strings, text utilities
#DocumentDescription
41sillo-oauthProvider abstraction, OAuth flow, state management, PKCE, testing
42sillo-inertiaAdapter, HTML/JSON decision, props, Vite integration, version mismatch
43sillo-startProject creation, tarball fetching, personalization, naming utilities
44@sillo/atlasOpenAPI reference, DOM construction, API client, search, snippets
45records-ormStandalone pypika-based ORM, backend abstraction, SQLite backend
#DocumentDescription
46Architectural DecisionsKey design choices, trade-offs, rejected alternatives
47Debugging GuideSymptom → cause → resolution chains, inspection points
48Extending SilloExtension patterns, contracts, where new code lives
49Change Impact AnalysisModule dependency chains, modification consequences
50GlossarySillo-specific terminology, framework concepts

New to the codebase? Start with 01-ARCHITECTURE-OVERVIEW.md, then read 02-APPLICATION-LIFECYCLE.md.

Debugging a production issue? Go to 47-DEBUGGING.md for symptom-based diagnosis.

Adding a new feature? Read 48-EXTENDING.md for extension patterns, then 49-CHANGE-IMPACT.md to understand blast radius.

Modifying core code? Check 49-CHANGE-IMPACT.md first to understand dependencies.

Understanding a specific subsystem? Use the table above to find the relevant document.


All technical claims in this documentation are derived from actual source code analysis of the Sillo repository at /Users/admin/sillo.build/. File paths reference the working tree as of 2026-08-11.

Key source locations:

  • Core framework: /Users/admin/sillo.build/core/sillo/
  • Tests: /Users/admin/sillo.build/core/tests/
  • OAuth: /Users/admin/sillo.build/oauth/sillo_oauth/
  • Inertia: /Users/admin/sillo.build/inertia/sillo_inertia/
  • Start: /Users/admin/sillo.build/start/sillo_start/
  • Starter: /Users/admin/sillo.build/starter/
  • Atlas: /Users/admin/sillo.build/atlas/src/
  • records-orm: /Users/admin/sillo.build/records-orm/records_orm/