# Documentation Index This is a comprehensive guide to all Strata documentation and resources. Use this index to find what you need quickly. --- ## πŸš€ **Getting Started** | Resource | Purpose | For Whom | | ------------------------------------------------------ | ------------------------------------------- | ----------------------- | | [README.md](../README.md) | Project overview, quick start, key features | Everyone | | [Getting Started Guide](./platform/getting-started.md) | Step-by-step setup and first deployment | New users | | [Features Overview](./guides/features.md) | Practical rundown of what strata does | Users evaluating strata | | [VS Code Extension README](../src/vscode/README.md) | Extension features, installation, usage | VS Code users | --- ## οΏ½ **Reference** | Resource | Purpose | | ---------------------------- | ---------------------------------------------------- | | [GLOSSARY.md](./GLOSSARY.md) | Terminology and core concepts used throughout strata | --- ## οΏ½πŸ“– **User Guides** ### Core Concepts | Guide | Purpose | | -------------------------------------------------------------------------------- | ------------------------------------- | | [Workspace Model](./config/workspace.md) | Understanding the workspace structure | | [Deployment Configuration](./config/deployment.md) | Defining deployments | | [Environments](./config/environment.md) | Managing environment-specific configs | | [Providers & Remote Infrastructure](./config/provider.md) | Setting up cloud providers | | [Networking & Firewalls](./config/network.md) / [Firewall](./config/firewall.md) | Network configuration | | [DNS & Routing](./config/dns.md) | DNS setup and management | | [Modules & Reusability](./config/module.md) | Creating reusable components | | [Namespaces & Multi-Tenancy](./config/namespace.md) | Isolating deployments | | [Resources](./config/resource.md) | Defining infrastructure resources | | [Workflow Orchestration](./config/workflow.md) | Defining deployment workflows | ### Operational Guides | Guide | Purpose | | ----------------------------------------------------------------------- | ----------------------------------------- | | [Commands Reference](./platform/commands.md) | Complete CLI command documentation | | [Validation & Error Handling](./platform/validators.md) | How validation works and error resolution | | [Building Deployments](./platform/builders.md) | Pre-deployment artifact generation | | [Deploying Infrastructure](./guides/deploying.md) | End-to-end deployment operations | | [Deployment Approval Gates](./guides/deployment-approval-gates.md) | Pausing deployments for approval/review | | [Managing Environments](./guides/environment-composition.md) | Environment composition and overrides | | [Environment Inspection](./guides/environment-command-group.md) | Query outputs, state, and drift | | [Multi-Repository Setup](./guides/multi-repo-setup.md) | Version pinning and promotion workflows | | [Service Deployment](./guides/service-command-group.md) | Deploy individual services/modules | | [Secrets, Variables & Features](./guides/secrets-variables-features.md) | Resolution pattern for all three | | [Deployment Audit Trail](./guides/audit-command-group.md) | Tracking changes and compliance | | [Troubleshooting](./guides/troubleshooting-what-changed.md) | Common issues and solutions | ### Advanced Topics | Guide | Purpose | | ------------------------------------------------------------- | --------------------------------------------------------- | | [Scaffolding Templates](./guides/scaffolding-templates.md) | Creating files, bundles, and multi-tenant fleet scaffolds | | [Policy Engine](./platform/policies.md) | Built-in policies and custom rules | | [Lifecycle Hooks](./platform/lifecycles.md) | Pre/post deployment scripts | | [SBOM & Supply Chain](./guides/extending-sbom-plugins.md) | Bill of materials generation | | [Drift Detection](./guides/detecting-infrastructure-drift.md) | Finding configuration drift | --- ## πŸ—οΈ **Architecture & Design Decisions** ### Decision Records (ADRs) Every significant architectural decision is documented as an ADR. Status indicators: - βœ… **Accepted** β€” Approved and implemented - πŸ”„ **Proposed** β€” Under review - ⏸️ **Deferred** β€” Planned but not yet implemented - ❌ **Deprecated** β€” Superseded by newer decisions | ADR | Title | Status | Purpose | | ------------------------------------------------------------------------------- | ------------------------------------ | ---------- | --------------------------------------------------------- | | [0001](./decisions/0001-kubernetes-style-yaml-schema.md) | Kubernetes-style YAML schema | βœ… Accepted | Model structure and validation | | [0002](./decisions/0002-python-click-not-compiled-cli.md) | Python + Click CLI (not compiled) | βœ… Accepted | Tool implementation language | | [0003](./decisions/0003-layered-architecture.md) | Layered architecture | βœ… Accepted | Code organization and dependencies | | [0004](./decisions/0004-exit-code-convention.md) | Exit code convention | βœ… Accepted | Standard exit codes (0/1/2/3/4) with lock conflict signal | | [0005](./decisions/0005-secret-resolution-at-build-time.md) | Secret resolution at build time | βœ… Accepted | When/how secrets are injected | | [0006](./decisions/0006-policy-engine-for-deployment-guardrails.md) | Policy engine | βœ… Accepted | Validation rules and enforcement | | [0007](./decisions/0007-deployment-state-locking.md) | Deployment state locking | βœ… Accepted | Concurrent deployment prevention | | [0008](./decisions/0008-infrastructure-drift-detection.md) | Infrastructure drift detection | ⏸️ Deferred | Detecting config vs. state differences | | [0009](./decisions/0009-sbom-extended-sources-and-inventory.md) | SBOM extended sources | βœ… Accepted | Supply chain / Bill of materials | | [0010](./decisions/0010-rename-configuration-repositories-to-remotes.md) | Rename repositories β†’ remotes | βœ… Accepted | Terminology clarification | | [0011](./decisions/0011-promotion-strategies-for-version-progression.md) | Promotion strategies | βœ… Accepted | Cross-environment version progression | | [0012](./decisions/0012-rename-customer-to-tenant.md) | Rename customer β†’ tenant | βœ… Accepted | Terminology update | | [0013](./decisions/0013-auto-generated-secrets.md) | Auto-generated secrets | βœ… Accepted | Automatic secret creation & seeding | | [0014](./decisions/0014-onboarding-experience.md) | Onboarding experience | βœ… Accepted | Getting-started walkthrough | | [0015](./decisions/0015-flow-command-dependency-graph.md) | Dependency graph | βœ… Accepted | File reference visualization | | [0016](./decisions/0016-console-interactive-repl.md) | Console REPL | βœ… Accepted | Interactive shell | | [0017](./decisions/0017-jinja2-template-engine.md) | Jinja2 templates | βœ… Accepted | YAML templating | | [0017b](./decisions/0017-tag-based-release-workflow-option-c.md) | Tag-based release workflow | ⏸️ Deferred | Git tag conventions | | [0018](./decisions/0018-deployment-audit-traceability.md) | Deployment audit traceability | βœ… Accepted | Change tracking & SIEM | | [0019](./decisions/0019-configurable-terraform-build-output.md) | Terraform build output | βœ… Accepted | Artifact generation | | [0020](./decisions/0020-lifecycle-phases-and-environment-variables.md) | Lifecycle phases | βœ… Accepted | Pre/post hooks (27 phases) | | [0021](./decisions/0021-deployment-manifests-as-first-class-build-artifacts.md) | Deployment manifests | βœ… Accepted | Build & deploy artifacts | | [0022](./decisions/0022-siem-integration-splunk-hec-cef.md) | SIEM integration (Splunk HEC) | βœ… Accepted | Audit log forwarding | | [0023](./decisions/0023-pluggable-provisioner-framework.md) | Pluggable provisioners | βœ… Accepted | Custom infrastructure provisioners | | [0024](./decisions/0024-environment-composition-flat-merge-fix.md) | Environment composition (flat merge) | βœ… Accepted | Multi-file environment merging | --- ## πŸ’» **Developer Documentation** ### Extension (VS Code) | Resource | Purpose | | -------------------------------------------------------- | -------------------------------------- | | [VS Code Extension README](../src/vscode/README.md) | User-facing extension documentation | | [Extension DEVELOPMENT.md](../src/vscode/DEVELOPMENT.md) | Development setup, building, debugging | | [Extension Changelog](../src/vscode/CHANGELOG.md) | Version history and features | ### CLI (Python) | Resource | Purpose | | ----------------------------------------------- | ----------------------------- | | [Code Architecture](./platform/architecture.md) | Codebase structure and layers | ### Contributing | Resource | Purpose | | --------------------------------------------------- | ------------------------------------ | | [GOVERNANCE.md](../.github/GOVERNANCE.md) | Project governance & decision-making | | [CODE_OF_CONDUCT.md](../.github/CODE_OF_CONDUCT.md) | Community expectations | | [SECURITY.md](../.github/SECURITY.md) | Reporting security issues | | [SUPPORT.md](../.github/SUPPORT.md) | Getting support and reporting issues | --- ## πŸ“š **Examples & Tutorials** | Resource | Purpose | | ----------------------------------------------------- | ------------------------------------- | | [examples/](./examples/) | Working examples for common scenarios | | [config/aws-eks/](../config/aws-eks/) | AWS EKS example deployment | | [config/azure-aks/](../config/azure-aks/) | Azure AKS example deployment | | [config/gcp-gke/](../config/gcp-gke/) | Google GKE example deployment | | [config/hetzner-compose/](../config/hetzner-compose/) | Docker Compose example | | [config/kamatera-swarm/](../config/kamatera-swarm/) | Docker Swarm example | --- ## πŸ”— **External Resources** ### Related Technologies | Tool | Purpose | Link | | ---------- | -------------------------- | --------------------- | | Terraform | Infrastructure as code | https://terraform.io | | Helm | Kubernetes package manager | https://helm.sh | | Kubernetes | Container orchestration | https://kubernetes.io | | Docker | Container runtime | https://docker.com | | Ansible | Configuration management | https://ansible.com | ### Community & Support | Resource | Purpose | Link | | ------------------ | ------------------------------ | --------------------------------------------------- | | GitHub Issues | Bug reports & feature requests | https://github.com/huybrechtsxyz/strata/issues | | GitHub Discussions | Questions & community chat | https://github.com/huybrechtsxyz/strata/discussions | | GitHub Wiki | Community-contributed content | https://github.com/huybrechtsxyz/strata/wiki | --- ## πŸ“‹ **Version-Specific Documentation** ### Current Version (v0.16.1) - See [GitHub Releases](https://github.com/huybrechtsxyz/strata/releases) for release notes and historical documentation --- ## 🎯 **Quick Navigation by Use Case** ### "I'm new to strata" 1. Start: [README.md](../README.md) 2. Read: [Getting Started Guide](./platform/getting-started.md) 3. Try: [Examples](./examples/) 4. Reference: [Features Overview](./guides/features.md) ### "I'm using the CLI" 1. Reference: [Commands](./platform/commands.md) 2. Learn: [Validation & Errors](./platform/validators.md) 3. Configure: [Workspace](./config/workspace.md) and [Deployment](./config/deployment.md) 4. Troubleshoot: [Troubleshooting Guide](./guides/troubleshooting-what-changed.md) ### "I'm using the VS Code Extension" 1. Install: [VS Code Extension README](../src/vscode/README.md) 2. Configure: Settings in the README 3. Use: Chat, commands, tree views 4. Troubleshoot: [VS Code Extension README β€” Troubleshooting](../src/vscode/README.md#troubleshooting) ### "I want to contribute" 1. Read: [CONTRIBUTING.md](../CONTRIBUTING.md) 2. Review: [CODE_OF_CONDUCT.md](../.github/CODE_OF_CONDUCT.md) 3. Develop: [Extension DEVELOPMENT.md](../src/vscode/DEVELOPMENT.md) (or CLI development) 4. Reference: [Architecture ADRs](./decisions/) for design context ### "I have a question or issue" 1. Check: [Troubleshooting](./guides/troubleshooting-what-changed.md) 2. Search: [GitHub Issues](https://github.com/huybrechtsxyz/strata/issues) 3. Ask: [GitHub Discussions](https://github.com/huybrechtsxyz/strata/discussions) 4. Report: Use issue templates for bugs/features ### "I need to integrate with strata" 1. Learn: [Commands Reference](./platform/commands.md) 2. Understand: [Exit Codes](./decisions/0004-exit-code-convention.md) 3. Use: [JSON Output Format](./platform/json-api.md) (if exists) 4. Reference: [Policy Engine](./guides/policies.md) for validation --- ## πŸ“„ **File Structure** ``` strata/ β”œβ”€β”€ README.md # Project overview β”œβ”€β”€ CONTRIBUTING.md # Contribution guidelines β”œβ”€β”€ CHANGELOG.md # Release notes β”œβ”€β”€ docs/ β”‚ β”œβ”€β”€ README.md # Documentation index β”‚ β”œβ”€β”€ config/ # YAML model documentation β”‚ β”‚ β”œβ”€β”€ workspace.md β”‚ β”‚ β”œβ”€β”€ deployment.md β”‚ β”‚ β”œβ”€β”€ environment.md β”‚ β”‚ β”œβ”€β”€ provider.md β”‚ β”‚ β”œβ”€β”€ network.md β”‚ β”‚ β”œβ”€β”€ firewall.md β”‚ β”‚ β”œβ”€β”€ dns.md β”‚ β”‚ β”œβ”€β”€ module.md β”‚ β”‚ β”œβ”€β”€ namespace.md β”‚ β”‚ β”œβ”€β”€ resource.md β”‚ β”‚ └── workflow.md β”‚ β”œβ”€β”€ guides/ # How-to guides β”‚ β”‚ β”œβ”€β”€ features.md β”‚ β”‚ β”œβ”€β”€ validation.md β”‚ β”‚ β”œβ”€β”€ building.md β”‚ β”‚ β”œβ”€β”€ deploying.md β”‚ β”‚ β”œβ”€β”€ environments.md β”‚ β”‚ β”œβ”€β”€ secrets.md β”‚ β”‚ β”œβ”€β”€ audit.md β”‚ β”‚ β”œβ”€β”€ policies.md β”‚ β”‚ β”œβ”€β”€ lifecycle-hooks.md β”‚ β”‚ β”œβ”€β”€ multi-repo.md β”‚ β”‚ β”œβ”€β”€ sbom.md β”‚ β”‚ β”œβ”€β”€ drift.md β”‚ β”‚ └── troubleshooting.md β”‚ β”œβ”€β”€ platform/ # Platform reference β”‚ β”‚ β”œβ”€β”€ getting-started.md β”‚ β”‚ β”œβ”€β”€ commands.md β”‚ β”‚ └── json-api.md β”‚ β”œβ”€β”€ decisions/ # Architecture Decision Records β”‚ β”‚ β”œβ”€β”€ 0001-kubernetes-style-yaml-schema.md β”‚ β”‚ β”œβ”€β”€ 0002-python-click-not-compiled-cli.md β”‚ β”‚ └── ... (23 more ADRs) β”‚ β”œβ”€β”€ examples/ # Runnable examples β”‚ └── vscode/ # Extension documentation β”œβ”€β”€ src/vscode/ β”‚ β”œβ”€β”€ README.md # User documentation β”‚ β”œβ”€β”€ DEVELOPMENT.md # Developer guide β”‚ └── CHANGELOG.md # Extension changelog β”œβ”€β”€ .github/ β”‚ β”œβ”€β”€ CONTRIBUTING.md # (alt) Contribution guidelines β”‚ β”œβ”€β”€ CODE_OF_CONDUCT.md β”‚ β”œβ”€β”€ GOVERNANCE.md β”‚ β”œβ”€β”€ SECURITY.md β”‚ β”œβ”€β”€ SUPPORT.md β”‚ β”œβ”€β”€ CONTRIBUTING.md β”‚ β”œβ”€β”€ ISSUE_TEMPLATE/ β”‚ β”‚ β”œβ”€β”€ bug_report.md β”‚ β”‚ β”œβ”€β”€ feature_request.md β”‚ β”‚ └── documentation.md β”‚ └── pull_request_template.md └── config/ # Example deployments β”œβ”€β”€ aws-eks/ β”œβ”€β”€ azure-aks/ β”œβ”€β”€ gcp-gke/ β”œβ”€β”€ hetzner-compose/ └── kamatera-swarm/ ``` --- ## πŸ” **Search Tips** - **Looking for a specific command?** β†’ [Commands Reference](./platform/commands.md) - **Need to understand a model?** β†’ [config/ folder](./config/) - **Want to know "why" a decision was made?** β†’ [Architecture Decisions](./decisions/) - **Stuck on a problem?** β†’ [Troubleshooting Guide](./guides/troubleshooting.md) - **Want to contribute?** β†’ [CONTRIBUTING.md](../CONTRIBUTING.md) --- ## πŸ“ž **Support & Feedback** - **Questions?** Ask in [GitHub Discussions](https://github.com/huybrechtsxyz/strata/discussions) - **Found a bug?** Report in [GitHub Issues](https://github.com/huybrechtsxyz/strata/issues) - **Have a feature idea?** Use the [feature request](../.github/ISSUE_TEMPLATE/feature_request.md) template - **Security issue?** Email security@example.com (see [SECURITY.md](../.github/SECURITY.md)) --- **Last updated:** 2026-07-06 **Strata Version:** 0.16.1+ **Documentation Status:** πŸ“– Complete