# Concepts

The ideas behind the platform. Learn how projects, pipelines, and plugins fit together, how types, history, versions, and quality checks are handled, and the five planes it all runs on.

- [Projects](/docs/concepts/projects/index.md): A project is at the core of your Amfelt experience. It connects data sources to your data platform and defines the jobs that load your data.
- [Plugins](/docs/concepts/plugins/index.md): Connectors ship as versioned plugins. What they declare, where they run, and why selecting them per role is what makes the platform composable.
- [Pipelines](/docs/concepts/pipelines/index.md): How data travels from a source to your data platform, covering the jobs that move it, the layers it lands in, and the order a run executes them.
- [Type resolution](/docs/concepts/type-resolution/index.md): How a column's type survives the trip from source to data platform, covering the three vocabularies involved and the order they are tried in.
- [Write modes and history](/docs/concepts/write-modes-and-history/index.md): What the history layer remembers, how records are meant to land in staging, and the keys both depend on.
- [Templates](/docs/concepts/templates/index.md): The SQL that maintains your history and bridge layers is generated from templates your target connector owns. They are deterministic, dialect-native, and readable.
- [Versioning and compatibility](/docs/concepts/versioning/index.md): One semantic-version scale applied to five things, including the one you did not choose to version (your source's schema).
- [Data quality checks](/docs/concepts/data-quality/index.md): Three checks run on every sync. Two you get without asking, and one you write in the contract.
- [Architecture](/docs/concepts/architecture/index.md): The five planes of the Amfelt platform (who uses it, where it is controlled, how it is secured and observed, and where your data lives).
