# LOGPile Bible > **Documentation language:** English only. All new documentation must be written in English. > > **Architectural decisions:** Every significant architectural decision **must** be recorded in > [`10-decisions.md`](10-decisions.md) before or alongside the code change. This directory is the single source of truth for LOGPile's architecture, design, and integration contracts. It is structured so that both humans and AI assistants can navigate it quickly. --- ## Contents | # | File | What it covers | |---|------|----------------| | 01 | [overview.md](01-overview.md) | Product goals, operating modes, high-level concept | | 02 | [architecture.md](02-architecture.md) | Runtime structure, key flows, in-memory state | | 03 | [api.md](03-api.md) | All HTTP endpoints — contracts, request/response shapes | | 04 | [data-models.md](04-data-models.md) | `AnalysisResult`, canonical `hardware.devices` repository | | 05 | [collectors.md](05-collectors.md) | Live data collectors (Redfish, IPMI scaffold) | | 06 | [parsers.md](06-parsers.md) | Archive parser framework + all vendor parsers | | 07 | [exporters.md](07-exporters.md) | CSV / JSON / Reanimator export + full Reanimator integration spec | | 08 | [build-release.md](08-build-release.md) | Build system, CLI flags, release process | | 09 | [testing.md](09-testing.md) | Testing expectations and guidelines | | 10 | [decisions.md](10-decisions.md) | Architectural decision log (ADL) | --- ## Quick orientation for AI assistants - Entry point: `cmd/logpile/main.go` - HTTP server: `internal/server/` — handlers in `handlers.go`, routes in `server.go` - Data contracts: `internal/models/` — never break `AnalysisResult` JSON shape - Frontend contract: `web/static/js/app.js` — keep API responses stable - Canonical inventory: `hardware.devices` in `AnalysisResult` — source of truth for UI and exports - Parser registry: `internal/parser/vendors/` — `init()` auto-registration pattern - Collector registry: `internal/collector/registry.go`