What is Weavestream?
Weavestream is a self-hosted IT documentation platform for structured infrastructure records: tenants, assets, credentials, articles, domains, files, IP ranges, users, integrations, and audit history.
This section gives a high-level orientation before you move into installation, configuration, and feature-specific docs.
Platform model
Weavestream is organised around a few core ideas:
- Workspace — the single Weavestream deployment, including global settings and terminology.
- Tenant — the top-level container for customer, department, site, or environment data.
- Structured records — assets, passwords, articles, domains, uploads, IP ranges, and related entities.
- Relationships — links between records so assets, credentials, procedures, domains, and files can be followed in context.
- Memberships and capabilities — role-based access at both platform and tenant scope.
- Audit history — append-only mutation records for operational visibility and accountability.
See Key Concepts for the full terminology reference.
What it includes
Deployment model
Weavestream runs as five Docker containers orchestrated by Docker Compose:
Persistent data lives under $DATA_DIR: Postgres data, Redis data, uploaded files, and scheduled backup dumps. Uploaded files are stored on the host filesystem and streamed through the API; the file directory is not exposed directly by the web server.
See Architecture for topology, request flow, RBAC resolution, data layout, and scaling notes.
Operating assumptions
- Docker-first deployment. Published images are pulled from GHCR; no source checkout or host-side build step is required.
- Operator-controlled storage. Backups are standard Postgres dumps plus filesystem copies of uploaded files and
.envsecrets. - Forced MFA. Every account enrolls TOTP before using the application.
- Server-side authorization. Tenant scoping, client visibility, and capabilities are enforced by the API.
- Append-only audit logging. Mutations and sensitive access events are captured for review.
- Configurable terminology. The UI label for tenants can be changed without changing routes, API paths, or database columns.
Next steps
- Key concepts — understand the core data model and terminology
- Architecture — review containers, request flow, RBAC, and data layout
- Getting started — deploy Weavestream with Docker Compose
- Feature reference — browse module-level documentation