1"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([[11567],{55226:e=>{e.exports=JSON.parse('{"version":{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"documentation":[{"type":"link","href":"/docs","label":"Home","docId":"home/docs","unlisted":false},{"type":"link","href":"/getting-started","label":"Getting Started","docId":"getting-started/getting-started","unlisted":false},{"type":"link","href":"/atlas-vs-others","label":"Atlas vs Others","docId":"atlas-vs-others","unlisted":false},{"type":"category","label":"Schema Inspection","collapsed":false,"items":[{"type":"link","href":"/inspect","label":"Inspecting Databases","docId":"inspect/inspect","unlisted":false},{"type":"link","href":"/inspect/database-to-code","label":"Export Database to Code","docId":"inspect/export-schema","unlisted":false}],"collapsible":true},{"type":"category","label":"Declarative Workflow","collapsed":false,"items":[{"type":"link","href":"/declarative/apply","label":"Applying Schema Changes","docId":"declarative/apply","unlisted":false},{"type":"link","href":"/declarative/plan","label":"Pre-planning Schema Changes","docId":"declarative/plan","unlisted":false},{"type":"link","href":"/declarative/setup-cicd","label":"Setup CI/CD","docId":"declarative/setup-cicd","unlisted":false},{"type":"link","href":"/declarative/diff","label":"Comparing Schemas","docId":"declarative/diff","unlisted":false}],"collapsible":true},{"type":"category","label":"Versioned Workflow","collapsed":false,"items":[{"type":"link","href":"/versioned/intro","label":"Quick Introduction","docId":"versioned/intro","unlisted":false},{"type":"link","href":"/versioned/diff","label":"Generating Migrations","docId":"versioned/diff","unlisted":false},{"type":"link","href":"/versioned/import","label":"Import Existing Databases","docId":"versioned/import","unlisted":false},{"type":"category","label":"Migration Linting","items":[{"type":"link","href":"/lint/analyzers","label":"Analyzers and Checks","docId":"lint/analyzers","unlisted":false},{"type":"link","href":"/lint/rules","label":"Custom Schema Policy","docId":"lint/rules","unlisted":false}],"collapsed":true,"collapsible":true,"href":"/versioned/lint"},{"type":"category","label":"Applying Migrations","items":[{"type":"link","href":"/versioned/pre-post-hooks","label":"Pre & Post Execution Hooks","docId":"versioned/apply-pre-post-hooks","unlisted":false}],"collapsed":true,"collapsible":true,"href":"/versioned/apply"},{"type":"link","href":"/versioned/setup-cicd","label":"Setup CI/CD","docId":"versioned/setup-cicd","unlisted":false},{"type":"link","href":"/versioned/down","label":"Down Migrations (Rollback)","docId":"versioned/down","unlisted":false},{"type":"link","href":"/versioned/checks","label":"Pre-migration Checks","docId":"versioned/checks","unlisted":false},{"type":"link","href":"/versioned/new","label":"Manual Migrations","docId":"versioned/new","unlisted":false},{"type":"link","href":"/versioned/troubleshoot","label":"Migration Troubleshooting","docId":"versioned/troubleshoot","unlisted":false},{"type":"link","href":"/versioned/checkpoint","label":"Checkpoints","docId":"versioned/checkpoint","unlisted":false},{"type":"link","href":"/versioned/drift-detection","label":"Drift Detection","docId":"versioned/drift-detection","unlisted":false}],"collapsible":true},{"type":"category","label":"Schema as Code","collapsed":false,"items":[{"type":"category","label":"HCL Syntax","items":[{"type":"link","href":"/atlas-schema/hcl-types","label":"Column Types","docId":"atlas-schema/hcl-types","unlisted":false},{"type":"link","href":"/atlas-schema/input-variables","label":"Input Variables","docId":"atlas-schema/hcl-variables","unlisted":false}],"collapsed":true,"collapsible":true,"href":"/atlas-schema/hcl"},{"type":"link","href":"/atlas-schema/sql","label":"SQL Syntax","docId":"atlas-schema/sql-schema","unlisted":false},{"type":"link","href":"/orms","label":"ORMs and Frameworks","docId":"orms/index","unlisted":false},{"type":"link","href":"/atlas-schema/external","label":"External Integrations","docId":"atlas-schema/external-schema","unlisted":false},{"type":"link","href":"/atlas-schema/projects","label":"Atlas Configuration","docId":"atlas-schema/projects","unlisted":false}],"collapsible":true,"href":"/atlas-schema"},{"type":"category","label":"Data Scripts","collapsed":false,"items":[{"type":"link","href":"/scripts/exec","label":"Transactional Mutations","docId":"scripts/exec","unlisted":false},{"type":"link","href":"/scripts/query","label":"Queries and Reports","docId":"scripts/query","unlisted":false},{"type":"link","href":"/scripts/masking","label":"Masking Sensitive Output","docId":"scripts/masking","unlisted":false},{"type":"link","href":"/scripts/loop","label":"Batched Loops","docId":"scripts/loop","unlisted":false},{"type":"link","href":"/scripts/kubernetes","label":"Running on Kubernetes","docId":"scripts/kubernetes","unlisted":false}],"collapsible":true,"href":"/scripts"},{"type":"category","label":"Testing Framework","collapsed":true,"items":[{"type":"link","href":"/testing/schema","label":"Testing Schemas","docId":"testing/schema","unlisted":false},{"type":"link","href":"/testing/migrate","label":"Testing Migrations","docId":"testing/migrate","unlisted":false},{"type":"link","href":"/testing/plan","label":"Testing Plans","docId":"testing/plan","unlisted":false},{"type":"link","href":"/scripts/testing","label":"Testing Data Scripts","docId":"scripts/testing","unlisted":false}],"collapsible":true},{"type":"category","label":"Concepts","collapsed":true,"items":[{"type":"link","href":"/concepts/url","label":"URLs","docId":"concepts/concepts-url","unlisted":false},{"type":"link","href":"/concepts/dev-database","label":"Dev Database","docId":"concepts/dev-database","unlisted":false},{"type":"link","href":"/concepts/migration-directory-integrity","label":"Directory Integrity","docId":"concepts/migration-directory-integrity","unlisted":false},{"type":"link","href":"/concepts/declarative-vs-versioned","label":"Declarative vs Versioned","docId":"concepts/workflows","unlisted":false}],"collapsible":true},{"type":"category","label":"Cloud","collapsed":true,"items":[{"type":"link","href":"/cloud/getting-started","label":"Getting Started","docId":"cloud/getting-started","unlisted":false},{"type":"category","label":"Features","collapsed":true,"items":[{"type":"link","href":"/cloud/features/registry","label":"Atlas Registry","docId":"cloud/features/registry","unlisted":false},{"type":"link","href":"/cloud/features/schema-docs","label":"Schema Docs","docId":"cloud/features/schema-docs","unlisted":false}
1,{"type":"link","href":"/cloud/features/lineage-graph","label":"Lineage Graph","docId":"cloud/features/lineage-graph","unlisted":false},{"type":"link","href":"/cloud/features/security-graph","label":"Security Graph","docId":"cloud/features/security-graph","unlisted":false},{"type":"link","href":"/cloud/features/slack","label":"Slack Integration","docId":"cloud/features/slack","unlisted":false},{"type":"link","href":"/cloud/features/pre-migration-checks","label":"Pre-migration Checks","docId":"cloud/features/pre-migration-checks","unlisted":false},{"type":"link","href":"/cloud/features/troubleshooting","label":"Migration Troubleshooting","docId":"cloud/features/troubleshooting","unlisted":false},{"type":"link","href":"/cloud/features/auditlog","label":"Audit Log","docId":"cloud/auditlog","unlisted":false}],"collapsible":true},{"type":"link","href":"/cloud/bots","label":"Creating Bots","docId":"cloud/bots","unlisted":false},{"type":"link","href":"/cloud/deployment","label":"Deployments","docId":"cloud/deployment","unlisted":false},{"type":"category","label":"Schema Monitoring","collapsed":true,"items":[{"type":"link","href":"/monitoring","label":"Home","docId":"monitoring/home","unlisted":false},{"type":"link","href":"/monitoring/drift-detection","label":"Drift Detection","docId":"monitoring/drift-detection","unlisted":false},{"type":"link","href":"/monitoring/webhooks","label":"Webhooks","docId":"monitoring/webhooks","unlisted":false},{"type":"category","label":"Atlas Agent","items":[{"type":"link","href":"/monitoring/overview","label":"How it Works","docId":"monitoring/overview","unlisted":false},{"type":"link","href":"/monitoring/discovery","label":"Database Discovery","docId":"monitoring/discovery","unlisted":false},{"type":"link","href":"/monitoring/security","label":"Security and Credentials","docId":"monitoring/security","unlisted":false}],"collapsed":true,"collapsible":true,"href":"/monitoring/quickstart"}],"collapsible":true},{"type":"link","href":"/cloud/pricing","label":"Pricing","docId":"cloud/pricing","unlisted":false},{"type":"link","href":"/cloud/aws-marketplace","label":"AWS Marketplace","docId":"cloud/aws-marketplace","unlisted":false}],"collapsible":true},{"type":"category","label":"Integrations","collapsed":true,"items":[{"type":"category","label":"Kubernetes Operator","items":[{"type":"link","href":"/integrations/kubernetes/quickstart","label":"Quickstart (Declarative)","docId":"integrations/kubernetes/quickstart","unlisted":false},{"type":"link","href":"/integrations/kubernetes/versioned-quickstart","label":"Quickstart (Versioned)","docId":"integrations/kubernetes/versioned-quickstart","unlisted":false},{"type":"link","href":"/integrations/kubernetes/install","label":"Installation","docId":"integrations/kubernetes/installation","unlisted":false},{"type":"link","href":"/integrations/kubernetes/declarative","label":"Declarative Flow","docId":"integrations/kubernetes/declarative","unlisted":false},{"type":"link","href":"/integrations/kubernetes/versioned","label":"Versioned Flow","docId":"integrations/kubernetes/versioned","unlisted":false},{"type":"link","href":"/integrations/kubernetes/pre-approval","label":"Pre-approval","docId":"integrations/kubernetes/pre-approval","unlisted":false},{"type":"link","href":"/integrations/kubernetes/ad-hoc-approval","label":"Ad-hoc Approval","docId":"integrations/kubernetes/ad-hoc-approval","unlisted":false},{"type":"link","href":"/integrations/kubernetes/project-configuration","label":"Project Configuration","docId":"integrations/kubernetes/project-configuration","unlisted":false}],"collapsed":true,"collapsible":true,"href":"/integrations/kubernetes"},{"type":"category","label":"GitHub Actions","items":[{"type":"link","href":"/integrations/github-actions/pre-approval","label":"Pre-approval","docId":"integrations/github-actions/pre-approval","unlisted":false},{"type":"link","href":"/integrations/github-actions/ad-hoc-approval","label":"Ad-hoc Approval","docId":"integrations/github-actions/ad-hoc-approval","unlisted":false}],"collapsed":true,"collapsible":true,"href":"/integrations/github-actions"},{"type":"link","href":"/integrations/circleci-orbs","label":"CircleCI Orbs","docId":"integrations/circleci-orbs","unlisted":false},{"type":"category","label":"GitLab CI Components","items":[{"type":"link","href":"/integrations/gitlab-ci-components/pre-approval","label":"Pre-approval","docId":"integrations/gitlab-ci-components/pre-approval","unlisted":false}
1,{"type":"link","href":"/integrations/gitlab-ci-components/ad-hoc-approval","label":"Ad-hoc Approval","docId":"integrations/gitlab-ci-components/ad-hoc-approval","unlisted":false}],"collapsed":true,"collapsible":true,"href":"/integrations/gitlab-ci-components"},{"type":"link","href":"/integrations/bitbucket-pipes","label":"Bitbucket Pipes","docId":"integrations/bitbucket-pipes","unlisted":false},{"type":"link","href":"/integrations/azure-devops","label":"Azure DevOps","docId":"integrations/azure-devops","unlisted":false},{"type":"category","label":"Terraform Provider","items":[{"type":"link","href":"/integrations/terraform/quickstart","label":"Quickstart","docId":"integrations/terraform/quickstart","unlisted":false},{"type":"link","href":"/integrations/terraform/versioned","label":"Versioned Workflow","docId":"integrations/terraform/versioned","unlisted":false},{"type":"link","href":"/integrations/terraform/declarative","label":"Declarative Workflow","docId":"integrations/terraform/declarative","unlisted":false},{"type":"link","href":"/integrations/terraform/ad-hoc-approval","label":"Ad-hoc Approval","docId":"integrations/terraform/ad-hoc-approval","unlisted":false},{"type":"link","href":"/integrations/terraform/project-configuration","label":"Project Configuration","docId":"integrations/terraform/project-configuration","unlisted":false}],"collapsed":true,"collapsible":true,"href":"/integrations/terraform-provider"},{"type":"link","href":"/integrations/go-sdk","label":"Go SDK","docId":"integrations/go-sdk","unlisted":false}],"collapsible":true,"href":"/integrations"},{"type":"category","label":"HCL Docs","collapsed":true,"items":[{"type":"link","href":"/hcl/postgres","label":"PostgreSQL Schema","docId":"hcldoc/postgres","unlisted":false},{"type":"link","href":"/hcl/mysql","label":"MySQL Schema","docId":"hcldoc/mysql","unlisted":false},{"type":"link","href":"/hcl/mariadb","label":"MariaDB Schema","docId":"hcldoc/mariadb","unlisted":false},{"type":"link","href":"/hcl/sqlite","label":"SQLite Schema","docId":"hcldoc/sqlite","unlisted":false},{"type":"link","href":"/hcl/clickhouse","label":"ClickHouse Schema","docId":"hcldoc/clickhouse","unlisted":false},{"type":"link","href":"/hcl/mssql","label":"SQL Server Schema","docId":"hcldoc/mssql","unlisted":false},{"type":"link","href":"/hcl/redshift","label":"Redshift Schema","docId":"hcldoc/redshift","unlisted":false},{"type":"link","href":"/hcl/oracle","label":"Oracle Schema","docId":"hcldoc/oracle","unlisted":false},{"type":"link","href":"/hcl/spanner","label":"Google Cloud Spanner Schema","docId":"hcldoc/spanner","unlisted":false},{"type":"link","href":"/hcl/snowflake","label":"Snowflake Schema","docId":"hcldoc/snowflake","unlisted":false},{"type":"link","href":"/hcl/databricks","label":"Databricks Schema","docId":"hcldoc/databricks","unlisted":false},{"type":"link","href":"/hcl/config","label":"Atlas Config","docId":"hcldoc/config","unlisted":false},{"type":"link","href":"/hcl/scripts","label":"Atlas Script","docId":"hcldoc/scripts","unlisted":false},{"type":"link","href":"/hcl/testing","label":"Atlas Testing","docId":"hcldoc/testing","unlisted":false},{"type":"link","href":"/hcl/plan","label":"Atlas Migration Plan","docId":"hcldoc/plan","unlisted":false},{"type":"link","href":"/hcl/rule","label":"Atlas Linting Rule","docId":"hcldoc/rule","unlisted":false},{"type":"link","href":"/hcl/functions","label":"Functions","docId":"hcldoc/functions","unlisted":false},{"type":"link","href":"/hcl/agent","label":"Agent Configuration","docId":"hcldoc/agent","unlisted":false}],"collapsible":true,"href":"/hcl/docs"},{"type":"category","label":"CLI Reference","collapsed":true,"items":[{"type":"link","href":"/features","label":"Feature Compatibility","docId":"features","unlisted":false},{"type":"link","href":"/community-edition","label":"Community Edition","docId":"community-edition","unlisted":false},{"type":"link","href":"/custom-drivers","label":"Custom Drivers","docId":"custom-drivers","unlisted":false},{"type":"link","href":"/cli/data-privacy","label":"Data Privacy","docId":"cli-data-privacy","unlisted":false}],"collapsible":true,"href":"/cli-reference"},{"type":"link","href":"/contributing","label":"Contributing","docId":"contributing","unlisted":false},{"type":"link","href":"/support","label":"Getting Support","docId":"support","unlisted":false},{"type":"link","href":"/trust","label":"Trust Center","docId":"trust","unlisted":false}],"guides":[{"type":"link","href":"/guides","label":"Guides","docId":"guides/guides","unlisted":false},{"type":"link","href":"/guides/modern-database-ci-cd","label":"Modern Database CI/CD","docId":"guides/modern-database-ci-cd","unlisted":false},{"type":"category","label":"Database-per-Tenant","collapsed":true,"items":[{"type":"link","href":"/guides/database-per-tenant/intro","label":"Introduction","docId":"guides/
1database-per-tenant/intro","unlisted":false},{"type":"link","href":"/guides/database-per-tenant/target-groups","label":"Target Groups","docId":"guides/database-per-tenant/target-groups","unlisted":false},{"type":"link","href":"/guides/database-per-tenant/deploying","label":"Deploying","docId":"guides/database-per-tenant/deploying","unlisted":false},{"type":"link","href":"/guides/database-per-tenant/rollout","label":"Rollout Strategies","docId":"guides/database-per-tenant/rollout","unlisted":false},{"type":"link","href":"/guides/database-per-tenant/declarative","label":"Declarative Flow","docId":"guides/database-per-tenant/declarative","unlisted":false},{"type":"link","href":"/guides/database-per-tenant/control-plane","label":"Control Plane","docId":"guides/database-per-tenant/control-plane","unlisted":false}],"collapsible":true},{"type":"category","label":"Deploying to Kubernetes","collapsed":true,"items":[{"type":"category","label":"Argo CD","collapsed":true,"items":[{"type":"link","href":"/guides/deploying/k8s-argo","label":"Argo CD Versioned","docId":"guides/deploying/k8s-argo","unlisted":false},{"type":"link","href":"/guides/deploying/k8s-argo-declarative","label":"Argo CD Declarative","docId":"guides/deploying/k8s-argo-declarative","unlisted":false}],"collapsible":true},{"type":"link","href":"/guides/deploying/k8s-flux","label":"Flux CD","docId":"guides/deploying/k8s-flux","unlisted":false},{"type":"link","href":"/guides/deploying/k8s-cloud-versioned","label":"Atlas Cloud","docId":"guides/deploying/k8s-cloud-versioned","unlisted":false},{"type":"link","href":"/guides/deploying/crossplane","label":"Crossplane","docId":"guides/deploying/crossplane","unlisted":false}],"collapsible":true},{"type":"category","label":"Deploying Schema Migrations","collapsed":true,"items":[{"type":"link","href":"/guides/deploying/remote-directories","label":"Working with Atlas Registry","docId":"guides/deploying/cloud-dir","unlisted":false},{"type":"link","href":"/guides/deploying/image","label":"Container Images","docId":"guides/deploying/image","unlisted":false},{"type":"link","href":"/guides/deploying/aws-ecs-fargate","label":"AWS ECS (Fargate)","docId":"guides/deploying/aws-ecs-fargate","unlisted":false},{"type":"link","href":"/guides/deploying/fly-io","label":"Fly.io","docId":"guides/deploying/fly-io","unlisted":false},{"type":"link","href":"/guides/deploying/cloud-sql-via-github-actions","label":"GCP CloudSQL (GH Actions)","docId":"guides/deploying/cloud-sql-via-github-actions","unlisted":false},{"type":"link","href":"/guides/deploying/secrets","label":"Working with secrets","docId":"guides/deploying/secrets","unlisted":false},{"type":"link","href":"/guides/deploying/rds-iam-migration-role","label":"AWS RDS PostgreSQL (Terraform + IAM)","docId":"guides/deploying/rds-iam-migration-role","unlisted":false},{"type":"link","href":"/guides/deploying/k8s-operator-certs","label":"SSL Certs (Kubernetes)","docId":"guides/deploying/k8s-operator-certs","unlisted":false},{"type":"link","href":"/guides/deploying/connect-to-db-from-github-actions","label":"Connect to DB from Actions","docId":"guides/deploying/connect-to-db-from-github-actions","unlisted":false}],"collapsible":true,"href":"/guides/deploying/intro"},{"type":"link","href":"/guides/security-as-code","label":"Shift Left Database Security","docId":"guides/security-as-code","unlisted":false},{"type":"link","href":"/guides/seed-data-as-code","label":"Seed Data as Code","docId":"guides/seed-data-as-code","unlisted":false},{"type":"category","label":"CI/CD on GitHub","collapsed":true,"items":[{"type":"link","href":"/guides/ci-platforms/github-versioned","label":"Versioned Workflow","docId":"guides/ci-platforms/github-versioned","unlisted":false},{"type":"link","href":"/guides/ci-platforms/github-declarative","label":"Declarative Workflow","docId":"guides/ci-platforms/github-declarative","unlisted":false}],"collapsible":true},{"type":"category","label":"CI/CD on GitLab","collapsed":true,"items":[{"type":"link","href":"/guides/ci-platforms/gitlab-versioned","label":"Versioned Workflow","docId":"guides/ci-platforms/gitlab-versioned","unlisted":false},{"type":"link","href":"/guides/ci-platforms/gitlab-declarative","label":"Declarative Workflow","docId":"guides/ci-platforms/gitlab-declarative","unlisted":false}],"collapsible":true},{"type":"category","label":"CI/CD on Bitbucket","collapsed":true,"items":[{"type":"link","href":"/guides/ci-platforms/bitbucket-versioned","label":"Versioned Workflow","docId":"guides/ci-platforms/bitbucket-versioned","unlisted":false},{"type":"link","href":"/guides/ci-platforms/bitbucket-declarative","label":"Declarative Workflow","docId":"guides/ci-platforms/bitbucket-declarative","unlisted":false}],"collapsible":true},{"type":"category","label":"CI/CD on CircleCI","collapsed":true,"items":[{"type":"link","href":"/guides/ci-platforms/circleci-versioned","label":"Versioned Workflow","docId":"guides/ci-platforms/circleci-versioned","unlisted":false},{"type":"link","href":"/guides/ci-platforms/circleci-declarative","label":"Declarative Workflow","docId":"guides/ci-platforms/circleci-declarative","unlisted":false}],"collapsible":true},{"type":"category","label":"CI/CD on Azure DevOps","collapsed":true,"items":[{"type":"link","href":"/guides/ci-platforms/azure-devops-github","label":"Azure DevOps and GitHub","docId":"guides/ci-platforms/azure-devops-github","unlisted":false},{"type":"link","href":"/guides/ci-platforms/azure-devops-repos","label":"Azure DevOps and Repos","docId":"guides/ci-platforms/azure-devops-repos","unlisted":false}],"collapsible":true},{"type":"category","label":"Terraform","collapsed":true,"items":[{"type":"link","href":"/guides/terraform/named-databases","label":"Named Databases","docId":"guides/terraform/named-databases","unlisted":false},{"type":"link","href":"/guides/terraform/opentaco","label":"OpenTaco (Digger)","docId":"guides/terraform/opentaco","unlisted":false}],"collapsible":true},{"type":"category","label":"dbt","collapsed":true,"items":[{"type":"link","href":"/guides/dbt/schema-management","label":"Schema Management","docId":"guides/
1dbt/schema-management","unlisted":false},{"type":"link","href":"/guides/dbt/atlas-vs-dbt","label":"Atlas vs dbt","docId":"guides/dbt/atlas-vs-dbt","unlisted":false},{"type":"link","href":"/guides/dbt/clickhouse","label":"ClickHouse and dbt","docId":"guides/dbt/dbt-clickhouse","unlisted":false},{"type":"link","href":"/guides/dbt/large-table-migrations","label":"Safe DDL on Large Tables","docId":"guides/dbt/large-table-migrations","unlisted":false},{"type":"link","href":"/guides/dbt/drift-detection","label":"Drift Detection","docId":"guides/dbt/dbt-drift-detection","unlisted":false}],"collapsible":true},{"type":"category","label":"AI Coding Assistants","collapsed":true,"items":[{"type":"link","href":"/guides/ai-tools/agent-skills","label":"Skills","docId":"guides/ai-tools/agent-skills","unlisted":false},{"type":"link","href":"/guides/database-schema-as-context","label":"Database Schema as Context","docId":"guides/database-schema-as-context","unlisted":false},{"type":"link","href":"/guides/ai-tools/github-copilot-instructions","label":"GitHub Copilot","docId":"guides/ai-tools/github-copilot-instructions","unlisted":false},{"type":"link","href":"/guides/ai-tools/cursor-rules","label":"Cursor","docId":"guides/ai-tools/cursor-rules","unlisted":false},{"type":"link","href":"/guides/ai-tools/claude-code-instructions","label":"Claude Code","docId":"guides/ai-tools/claude-code-instructions","unlisted":false},{"type":"link","href":"/guides/ai-tools/codex-instructions","label":"OpenAI Codex","docId":"guides/ai-tools/codex-instructions","unlisted":false}],"collapsible":true,"href":"/guides/ai-tools"},{"type":"category","label":"Security and Compliance","collapsed":true,"items":[{"type":"link","href":"/guides/security-scan","label":"Security Scanning","docId":"guides/security-scan","unlisted":false},{"type":"link","href":"/guides/reviewed-approved-migrations","label":"Reviewed and Approved Migrations","docId":"guides/compliance/reviewed-approved-migrations","unlisted":false},{"type":"link","href":"/guides/environment-promotion","label":"Environment Promotion","docId":"guides/compliance/environment-promotion","unlisted":false},{"type":"link","href":"/guides/environment-promotion-declarative","label":"Environment Promotion for Declarative Migrations","docId":"guides/compliance/environment-promotion-declarative","unlisted":false},{"type":"link","href":"/guides/drift-detection","label":"Drift Detection","docId":"guides/compliance/drift-detection","unlisted":false},{"type":"link","href":"/guides/backup-continuity-migration-versioned","label":"Versioned Migration Backups","docId":"guides/backup-continuity-versioned","unlisted":false},{"type":"link","href":"/guides/backup-continuity-schema-declarative","label":"Declarative Schema Backups","docId":"guides/backup-continuity-schema-declarative","unlisted":false}],"collapsible":true},{"type":"category","label":"Migration Tools","collapsed":true,"items":[{"type":"category","label":"Atlas vs Flyway","collapsed":true,"items":[{"type":"link","href":"/guides/flyway-snapshot-alternative","label":"Flyway Snapshot Alternative","docId":"guides/migration-tools/flyway-snapshot-alternative","unlisted":false},{"type":"link","href":"/guides/flyway-undo-alternative","label":"Flyway Undo Alternative","docId":"guides/migration-tools/flyway-undo-alternative","unlisted":false},{"type":"link","href":"/guides/migrate-flyway-to-atlas","label":"Migrating from Flyway","docId":"guides/migration-tools/migrate-flyway-to-atlas","unlisted":false}],"collapsible":true,"href":"/guides/atlas-vs-flyway"},{"type":"category","label":"Atlas vs Liquibase","collapsed":true,"items":[{"type":"link","href":"/guides/liquibase-diff-alternative","label":"Liquibase Diff Alternative","docId":"guides/migration-tools/liquibase-diff-alternative","unlisted":false},{"type":"link","href":"/guides/liquibase-rollback-alternative","label":"Liquibase Rollback Alternative","docId":"guides/migration-tools/liquibase-rollback-alternative","unlisted":false}],"collapsible":true,"href":"/guides/atlas-vs-liquibase"},{"type":"link","href":"/guides/atlas-vs-alembic","label":"Atlas vs Alembic","docId":"guides/migration-tools/atlas-vs-alembic","unlisted":false},{"type":"link","href":"/guides/atlas-vs-ssdt","label":"Atlas vs SSDT","docId":"guides/migration-tools/atlas-vs-ssdt","unlisted":false},{"type":"link","href":"/guides/atlas-vs-schemachange","label":"Atlas vs schemachange","docId":"guides/migration-tools/atlas-vs-schemachange","unlisted":false},{"type":"link","href":"/guides/migration-tools/golang-migrate","label":"Working with golang-migrate","docId":"guides/migration-tools/golang-migrate","unlisted":false},{"type":"link","href":"/guides/migration-tools/goose-import","label":"Importing from goose","docId":"guides/migration-tools/goose-import","unlisted":false}],"collapsible":true},{"type":"category","label":"Schema Policies","collapsed":true,"items":[{"type":"link","href":"/guides/schema-ownership","label":"Ownership Policy","docId":"guides/schema-ownership","unlisted":false},{"type":"link","href":"/guides/rls-policy","label":"RLS Policy","docId":"guides/rls-policy","unlisted":false},{"type":"link","href":"/guides/destructive-change-policy","label":"Destructive Change Policy","docId":"guides/
1destructive-change-policy","unlisted":false},{"type":"link","href":"/guides/lock-safe-not-null","label":"Safe NOT NULL Migrations","docId":"guides/lock-safe-not-null","unlisted":false}],"collapsible":true},{"type":"category","label":"Schema Inspection","collapsed":true,"items":[{"type":"link","href":"/guides/schema-health-check","label":"Schema Health Check","docId":"guides/schema-health-check","unlisted":false},{"type":"link","href":"/guides/go-templates","label":"Programmatic Inspection Output","docId":"guides/go-templates","unlisted":false},{"type":"link","href":"/guides/go-templates/exporter","label":"Schema Annotation Templates","docId":"guides/go-templates/exporter","unlisted":false},{"type":"link","href":"/guides/openapi-with-atlas","label":"OpenAPI from Database Schema","docId":"guides/openapi-with-atlas","unlisted":false},{"type":"link","href":"/guides/graphql-with-atlas","label":"GraphQL from Database Schema","docId":"guides/graphql-with-atlas","unlisted":false}],"collapsible":true},{"type":"category","label":"Atlas Cloud","collapsed":true,"items":[{"type":"link","href":"/cloud/roles-and-permissions","label":"Roles & Permissions","docId":"cloud/roles-and-permissions","unlisted":false},{"type":"category","label":"Monitoring","collapsed":true,"items":[{"type":"link","href":"/monitoring/github-quickstart","label":"GitHub Actions","docId":"monitoring/github-quickstart","unlisted":false},{"type":"link","href":"/monitoring/gitlab-quickstart","label":"GitLab CI","docId":"monitoring/gitlab-quickstart","unlisted":false},{"type":"link","href":"/monitoring/bitbucket-quickstart","label":"Bitbucket Pipelines","docId":"monitoring/bitbucket-quickstart","unlisted":false}],"collapsible":true},{"type":"category","label":"Atlas Agent","collapsed":true,"items":[{"type":"link","href":"/monitoring/helm","label":"Deploying with Helm","docId":"monitoring/helm","unlisted":false},{"type":"link","href":"/monitoring/terraform","label":"Deploying with Terraform to AWS","docId":"monitoring/terraform","unlisted":false}],"collapsible":true}],"collapsible":true},{"type":"category","label":"Testing","collapsed":true,"items":[{"type":"link","href":"/guides/testing/docker-compose","label":"With docker-compose","docId":"guides/testing/integration-docker-compose","unlisted":false},{"type":"link","href":"/guides/testing/github-actions","label":"With GitHub Actions","docId":"guides/testing/testing-github-actions","unlisted":false},{"type":"link","href":"/guides/testing/data-migrations","label":"Testing Data Migrations","docId":"guides/testing/testing-data-migrations","unlisted":false},{"type":"link","href":"/guides/testing/views","label":"Testing Views","docId":"guides/testing/testing-views","unlisted":false},{"type":"link","href":"/guides/testing/functions","label":"Testing Functions","docId":"guides/testing/testing-functions","unlisted":false},{"type":"link","href":"/guides/testing/domains","label":"Testing Domains","docId":"guides/testing/testing-domains","unlisted":false},{"type":"link","href":"/guides/testing/procedures","label":"Testing Stored Procedures","docId":"guides/testing/testing-procedures","unlisted":false},{"type":"link","href":"/guides/testing/triggers","label":"Testing Triggers","docId":"guides/testing/testing-triggers","unlisted":false}],"collapsible":true},{"type":"link","href":"/guides/atlas-in-docker","label":"Running Atlas in Docker","docId":"guides/atlas-in-docker","unlisted":false},{"type":"link","href":"/guides/migration-dirs/template-directory","label":"Template Directories","docId":"guides/migration-dirs/template-directory","unlisted":false},{"type":"category","label":"Archive","collapsed":true,"items":[{"type":"link","href":"/guides/deploying/helm","label":"Kubernetes (Helm)","docId":"guides/deploying/helm","unlisted":false},{"type":"link","href":"/guides/deploying/k8s-init-container","label":"Kubernetes (Init Container)","docId":"guides/deploying/k8s-init-containers","unlisted":false}],"collapsible":true}],"eval":[{"type":"category","label":"Evaluating Atlas","collapsed":false,"items":[{"type":"link","href":"/guides/evaluation/intro","label":"Introduction","docId":"guides/evaluation/intro","unlisted":false}],"collapsible":true},{"type":"category","label":"Installation","collapsed":false,"items":[{"type":"link","href":"/guides/evaluation/install","label":"Installing Atlas","docId":"guides/evaluation/install","unlisted":false},{"type":"link","href":"/guides/evaluation/connect","label":"Connect to your database","docId":"guides/evaluation/connect","unlisted":false},{"type":"link","href":"/guides/evaluation/verify-atlas","label":"Verify Atlas","docId":"guides/evaluation/verify-atlas","unlisted":false}],"collapsible":true},{"type":"category","label":"Setting Up","collapsed":false,"items":[{"type":"link","href":"/guides/evaluation/project-structure","label":"Setting Up Your Project","docId":"guides/evaluation/project-structure","unlisted":false},{"type":"link","href":"/guides/evaluation/schema-as-code","label":"Define Your Schema as Code","docId":"guides/evaluation/schema-as-code","unlisted":false},{"type":"link","href":"/guides/evaluation/setup-migrations","label":"Migration Setup","docId":"guides/evaluation/setup-migrations","unlisted":false}],"collapsible":true},{"type":"category","label":"Working with Atlas","collapsed":false,"items":[{"type":"link","href":"/guides/evaluation/developer-workflow","label":"Schema Change Workflow","docId":"guides/evaluation/developer-workflow","unlisted":false},{"type":"link","href":"/guides/evaluation/ci-cd","label":"Setup CI/CD","docId":"guides/evaluation/ci-cd","unlisted":false},{"type":"link","href":"/guides/evaluation/advanced-topics","label":"Advanced Topics","docId":"guides/evaluation/advanced-topics","unlisted":false}],"collapsible":true}],"databases":[{"type":"link","href":"/databases","label":"Databases","docId":"guides/
1databases","unlisted":false},{"type":"category","label":"PostgreSQL","collapsed":true,"items":[{"type":"link","href":"/guides/postgres/automatic-migrations","label":"Getting Started","docId":"guides/postgres/postgres-automatic-migrations","unlisted":false},{"type":"link","href":"/guides/postgres/serial-columns","label":"Serial Type Columns","docId":"guides/postgres/serial-columns","unlisted":false},{"type":"link","href":"/guides/postgres/partial-indexes","label":"Partial Indexes","docId":"guides/postgres/partial-indexes","unlisted":false},{"type":"link","href":"/guides/postgres/included-columns","label":"Covering Indexes","docId":"guides/postgres/included-columns","unlisted":false},{"type":"link","href":"/guides/postgres/index-operator-classes","label":"Index Operator Classes","docId":"guides/postgres/index-operator-classes","unlisted":false},{"type":"link","href":"/guides/postgres/pg-110","label":"Optimal Data Alignment (PG110)","docId":"guides/postgres/pg-110","unlisted":false},{"type":"link","href":"/guides/postgres/descending-indexes","label":"Descending Indexes","docId":"guides/postgres/descending-indexes","unlisted":false},{"type":"link","href":"/guides/postgres/functional-indexes","label":"Functional Indexes","docId":"guides/postgres/functional-indexes","unlisted":false},{"type":"link","href":"/guides/postgres/unlogged-tables","label":"Unlogged Tables","docId":"guides/postgres/unlogged-tables","unlisted":false},{"type":"link","href":"/guides/postgres/security-declarative","label":"Security as Code (Declarative)","docId":"guides/postgres/security-declarative","unlisted":false},{"type":"link","href":"/guides/postgres/security-versioned","label":"Security as Code (Versioned)","docId":"guides/postgres/security-versioned","unlisted":false},{"type":"link","href":"/guides/postgres/rds-extensions","label":"AWS RDS Extensions","docId":"guides/postgres/rds-extensions","unlisted":false},{"type":"link","href":"/guides/postgres/security-default-privileges","label":"Default Privileges","docId":"guides/postgres/security-default-privileges","unlisted":false},{"type":"link","href":"/guides/postgres/seed-data","label":"Seed & Lookup Data","docId":"guides/postgres/seed-data","unlisted":false},{"type":"link","href":"/guides/postgres/supabase","label":"Supabase Projects","docId":"guides/postgres/supabase","unlisted":false},{"type":"link","href":"/guides/postgres/pgtap-with-atlas","label":"Testing Schemas with pgTAP","docId":"guides/postgres/pgtap-with-atlas","unlisted":false},{"type":"link","href":"/guides/postgres/schema-test-template-databases","label":"Template Database Testing","docId":"guides/postgres/schema-test-template-databases","unlisted":false}
1,{"type":"link","href":"/guides/postgres/lineage-graph","label":"Lineage Graph","docId":"guides/postgres/lineage-graph","unlisted":false}],"collapsible":true},{"type":"category","label":"MySQL","collapsed":true,"items":[{"type":"link","href":"/guides/mysql/mysql-automatic-migrations","label":"Getting Started","docId":"guides/mysql/mysql-automatic-migrations","unlisted":false},{"type":"link","href":"/guides/mysql/descending-indexes","label":"Descending Indexes","docId":"guides/mysql/descending-indexes","unlisted":false},{"type":"link","href":"/guides/mysql/functional-indexes","label":"Functional Indexes","docId":"guides/mysql/functional-indexes","unlisted":false},{"type":"link","href":"/guides/mysql/prefix-indexes","label":"Prefix Indexes","docId":"guides/mysql/prefix-indexes","unlisted":false},{"type":"link","href":"/guides/mysql/check-constraint","label":"CHECK Constraint","docId":"guides/mysql/check-constraint","unlisted":false},{"type":"link","href":"/guides/mysql/terraform","label":"Managing with Terraform","docId":"guides/mysql/terraform-mysql-rds","unlisted":false},{"type":"link","href":"/guides/mysql/checks/MY102","label":"Inline REFERENCES (MY102)","docId":"guides/mysql/mysql-my-102","unlisted":false},{"type":"link","href":"/guides/mysql/checks/DS103","label":"Column Drop (DS103)","docId":"guides/mysql/mysql-ds-103","unlisted":false},{"type":"link","href":"/guides/mysql/checks/CD101","label":"Constraint Drop (CD101)","docId":"guides/mysql/mysql-cd-101","unlisted":false},{"type":"link","href":"/guides/mysql/security-declarative","label":"Security as Code (Declarative)","docId":"guides/mysql/security-declarative","unlisted":false},{"type":"link","href":"/guides/mysql/security-versioned","label":"Security as Code (Versioned)","docId":"guides/mysql/security-versioned","unlisted":false},{"type":"link","href":"/guides/mysql/seed-data","label":"Seed & Lookup Data","docId":"guides/mysql/seed-data","unlisted":false},{"type":"link","href":"/guides/mysql/lineage-graph","label":"Lineage Graph","docId":"guides/mysql/lineage-graph","unlisted":false}],"collapsible":true},{"type":"category","label":"ClickHouse","collapsed":true,"items":[{"type":"link","href":"/guides/clickhouse","label":"Getting Started","docId":"guides/clickhouse/getting-started-clickhouse","unlisted":false},{"type":"link","href":"/guides/clickhouse/clickhouse-cloud-atlas","label":"ClickHouse Cloud","docId":"guides/clickhouse/clickhouse-cloud-atlas","unlisted":false},{"type":"link","href":"/guides/clickhouse/cluster-mode","label":"Cluster Mode","docId":"guides/clickhouse/managing-clickhouse-cluster","unlisted":false},{"type":"link","href":"/guides/clickhouse/session-settings","label":"Session Settings","docId":"guides/clickhouse/managing-session-settings","unlisted":false},{"type":"link","href":"/guides/clickhouse/security-declarative","label":"Security as Code (Declarative)","docId":"guides/clickhouse/security-declarative","unlisted":false},{"type":"link","href":"/guides/clickhouse/security-versioned","label":"Security as Code (Versioned)","docId":"guides/clickhouse/security-versioned","unlisted":false},{"type":"link","href":"/guides/clickhouse/advanced-hcl-schema","label":"Advanced HCL Schema","docId":"guides/clickhouse/clickhouse-advanced-hcl-schema","unlisted":false},{"type":"link","href":"/guides/clickhouse/supported-objects","label":"Supported Objects","docId":"guides/clickhouse/clickhouse-supported-objects","unlisted":false},{"type":"link","href":"/guides/clickhouse/seed-data","label":"Seed & Lookup Data","docId":"guides/clickhouse/seed-data","unlisted":false},{"type":"link","href":"/guides/clickhouse/named-collections","label":"Named Collections","docId":"guides/clickhouse/named-collections","unlisted":false},{"type":"link","href":"/guides/clickhouse/wasm","label":"WASM Modules & WAS
1M UDFs","docId":"guides/clickhouse/wasm","unlisted":false},{"type":"link","href":"/guides/clickhouse/lineage-graph","label":"Lineage Graph","docId":"guides/clickhouse/lineage-graph","unlisted":false}],"collapsible":true},{"type":"category","label":"SQL Server","collapsed":true,"items":[{"type":"link","href":"/guides/mssql","label":"Getting Started","docId":"guides/getting-started-mssql","unlisted":false},{"type":"link","href":"/guides/mssql/security-declarative","label":"Security as Code (Declarative)","docId":"guides/mssql/security-declarative","unlisted":false},{"type":"link","href":"/guides/mssql/security-versioned","label":"Security as Code (Versioned)","docId":"guides/mssql/security-versioned","unlisted":false},{"type":"link","href":"/guides/mssql/seed-data","label":"Seed & Lookup Data","docId":"guides/mssql/seed-data","unlisted":false}],"collapsible":true},{"type":"category","label":"SQLite","collapsed":true,"items":[{"type":"link","href":"/guides/sqlite/partial-indexes","label":"Partial Indexes","docId":"guides/sqlite/partial-indexes","unlisted":false},{"type":"link","href":"/guides/sqlite/descending-indexes","label":"Descending Indexes","docId":"guides/sqlite/descending-indexes","unlisted":false},{"type":"link","href":"/guides/sqlite/functional-indexes","label":"Functional Indexes","docId":"guides/sqlite/functional-indexes","unlisted":false},{"type":"link","href":"/guides/sqlite/turso","label":"Working with Turso","docId":"guides/sqlite/turso","unlisted":false}],"collapsible":true},{"type":"link","href":"/guides/azure-fabric","label":"Azure Fabric Data Warehouse","docId":"guides/getting-started-azure-fabric","unlisted":false},{"type":"category","label":"Redshift","items":[{"type":"link","href":"/guides/redshift/automatic-migrations","label":"Getting Started","docId":"guides/redshift/getting-started-redshift","unlisted":false},{"type":"link","href":"/guides/redshift/lineage-graph","label":"Lineage Graph","docId":"guides/redshift/lineage-graph","unlisted":false},{"type":"link","href":"/guides/redshift/security-declarative","label":"Security as Code (Declarative)","docId":"guides/redshift/security-declarative","unlisted":false},{"type":"link","href":"/guides/redshift/security-versioned","label":"Security as Code (Versioned)","docId":"guides/redshift/security-versioned","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"category","label":"Aurora DSQL","items":[{"type":"link","href":"/guides/dsql/automatic-migrations","label":"Automatic Migrations","docId":"guides/dsql/getting-started-dsql","unlisted":false},{"type":"link","href":"/guides/dsql/token-generator","label":"Auth Tokens","docId":"guides/dsql/token-generator-dsql","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"link","href":"/guides/cockroachdb/automatic-migrations","label":"CockroachDB","docId":"guides/cockroachdb/getting-started-cockroachdb","unlisted":false},{"type":"link","href":"/guides/horizondb/automatic-migrations","label":"Azure HorizonDB","docId":"guides/horizondb/automatic-migrations","unlisted":false},{"type":"category","label":"YugabyteDB","items":[{"type":"link","href":"/guides/yugabyte/automatic-migrations","label":"Automatic Migrations","docId":"guides/yugabyte/getting-started-yugabyte","unlisted":false},{"type":"link","href":"/guides/yugabyte/distributed-schema-declarative","label":"Distributed Schemas (Declarative)","docId":"guides/yugabyte/distributed-schema-declarative","unlisted":false},{"type":"link","href":"/guides/yugabyte/distributed-schema-versioned","label":"Distributed Schemas (Versioned)","docId":"guides/yugabyte/distributed-schema-versioned","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"category","label":"Oracle","items":[{"type":"link","href":"/guides/oracle/automatic-migrations","label":"Automatic Migrations","docId":"guides/oracle/oracle-automatic-migrations","unlisted":false},{"type":"link","href":"/guides/oracle/vector","label":"VECTOR Columns (23ai+)","docId":"guides/oracle/oracle-vector","unlisted":false},{"type":"link","href":"/guides/oracle/security-declarative","label":"Database Security (Declarative)","docId":"guides/oracle/oracle-security-declarative","unlisted":false},{"type":"link","href":"/guides/oracle/security-versioned","label":"Database Security (Versioned)","docId":"guides/oracle/oracle-security-versioned","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"category","label":"Google Cloud Spanner","items":[{"type":"link","href":"/guides/spanner/automatic-migrations","label":"Getting Started","docId":"guides/spanner/automatic-migrations","unlisted":false},{"type":"link","href":"/guides/spanner/proto-columns","label":"Proto Column Types","docId":"guides/spanner/proto-columns","unlisted":false}],"collapsed":true,"collapsible":true},{"type":"category","label":"Snowflake","collapsed":true,"items":[{"type":"link","href":"/guides/snowflake/automatic-migrations","label":"Getting Started","docId":"guides/snowflake/automatic-migrations","unlisted":false},{"type":"link","href":"/guides/snowflake/security-declarative","label":"Security as Code (Declarative)","docId":"guides/snowflake/security-declarative","unlisted":false}
1,{"type":"link","href":"/guides/snowflake/lineage-graph","label":"Lineage Graph","docId":"guides/snowflake/lineage-graph","unlisted":false}],"collapsible":true},{"type":"link","href":"/guides/databricks/automatic-migrations","label":"Databricks","docId":"guides/databricks/automatic-migrations","unlisted":false}],"orms":[{"type":"link","href":"/orms","label":"ORMs and Frameworks","docId":"orms/index","unlisted":false},{"type":"link","href":"/orms/why-atlas-for-your-orm","label":"Why use Atlas with your ORM?","docId":"orms/why-atlas-for-orm","unlisted":false},{"type":"category","label":"GORM","collapsed":true,"items":[{"type":"link","href":"/guides/orms/gorm/getting-started","label":"Getting Started","docId":"guides/orms/gorm/getting-started","unlisted":false},{"type":"link","href":"/guides/orms/gorm/standalone","label":"Standalone Mode","docId":"guides/orms/gorm/standalone","unlisted":false},{"type":"link","href":"/guides/orms/gorm/program","label":"Program Mode","docId":"guides/orms/gorm/program","unlisted":false},{"type":"link","href":"/guides/orms/gorm/composite-types","label":"Composite Types","docId":"guides/orms/gorm/composite-types","unlisted":false},{"type":"link","href":"/guides/orms/gorm/domain-types","label":"Domain Types","docId":"guides/orms/gorm/domain-types","unlisted":false},{"type":"link","href":"/guides/orms/gorm/enum-types","label":"Enum Types","docId":"guides/orms/gorm/enum-types","unlisted":false},{"type":"link","href":"/guides/orms/gorm/extensions","label":"Extensions","docId":"guides/orms/gorm/extensions","unlisted":false},{"type":"link","href":"/guides/orms/gorm/row-level-security","label":"Row-Level Security","docId":"guides/orms/gorm/rls","unlisted":false},{"type":"link","href":"/guides/orms/gorm/triggers","label":"Triggers","docId":"guides/orms/gorm/triggers","unlisted":false},{"type":"link","href":"/guides/orms/gorm/views","label":"Views","docId":"guides/orms/gorm/views","unlisted":false},{"type":"link","href":"/guides/orms/gorm/visualize","label":"Visualize","docId":"guides/orms/gorm/visualize","unlisted":false},{"type":"link","href":"/guides/orms/gorm/generate-models","label":"Generate Models","docId":"guides/orms/gorm/generate-models","unlisted":false}],"collapsible":true,"href":"/guides/orms/gorm"},{"type":"category","label":"Prisma","collapsed":true,"items":[{"type":"link","href":"/guides/orms/prisma/getting-started","label":"Getting Started","docId":"guides/orms/prisma/getting-started","unlisted":false},{"type":"link","href":"/guides/orms/prisma/existing-project","label":"Existing Project","docId":"guides/orms/prisma/existing-project","unlisted":false},{"type":"link","href":"/guides/orms/prisma/vector-index","label":"Vector Index","docId":"guides/orms/prisma/vector-index","unlisted":false},{"type":"link","href":"/guides/orms/prisma/triggers","label":"Triggers","docId":"guides/orms/prisma/triggers","unlisted":false},{"type":"link","href":"/guides/orms/prisma/postgresql-partial-indexes","label":"Partial Indexes","docId":"guides/orms/prisma/partial-indexes","unlisted":false},{"type":"link","href":"/guides/orms/prisma/row-level-security","label":"Row-Level Security","docId":"guides/orms/prisma/rls","unlisted":false},{"type":"link","href":"/guides/orms/prisma/lint-naming","label":"Lint Naming","docId":"guides/orms/prisma/lint-naming","unlisted":false},{"type":"link","href":"/guides/orms/prisma/visualize","label":"Visualize","docId":"guides/orms/prisma/visualize","unlisted":false}],"collapsible":true,"href":"/guides/orms/prisma"},{"type":"category","label":"Drizzle","collapsed":true,"items":[{"type":"link","href":"/guides/orms/drizzle/getting-started","label":"Getting Started","docId":"guides/orms/drizzle/getting-started","unlisted":false},{"type":"link","href":"/guides/orms/drizzle/existing-project","label":"Existing Project","docId":"guides/orms/drizzle/existing-project","unlisted":false},{"type":"link","href":"/guides/orms/drizzle/visualize","label":"Visualize","docId":"guides/orms/drizzle/visualize","unlisted":false},{"type":"link","href":"/guides/orms/drizzle/triggers","label":"Triggers","docId":"guides/orms/drizzle/triggers","unlisted":false}],"collapsible":true,"href":"/guides/orms/drizzle"},{"type":"category","label":"Sequelize","collapsed":true,"items":[{"type":"link","href":"/guides/orms/sequelize/getting-started","label":"Getting Started","docId":"guides/orms/sequelize/getting-started","unlisted":false},{"type":"link","href":"/guides/orms/sequelize/standalone","label":"Standalone Mode","docId":"guides/orms/sequelize/standalone","unlisted":false},{"type":"link","href":"/guides/orms/sequelize/script","label":"Script Mode","docId":"guides/orms/sequelize/script","unlisted":false},{"type":"link","href":"/guides/orms/sequelize/composite-types","label":"Composite Types","docId":"guides/orms/sequelize/composite-types","unlisted":false},{"type":"link","href":"/guides/orms/sequelize/domain-types","label":"Domain Types","docId":"guides/orms/sequelize/domain-types","unlisted":false},{"type":"link","href":"/guides/orms/sequelize/row-level-security","label":"Row-Level Security","docId":"guides/orms/sequelize/rls","unlisted":false},{"type":"link","href":"/guides/orms/sequelize/triggers","label":"Triggers","docId":"guides/orms/sequelize/triggers","unlisted":false},{"type":"link","href":"/guides/orms/sequelize/views","label":"Views","docId":"guides/orms/sequelize/views","unlisted":false},{"type":"link","href":"/guides/orms/sequelize/visualize","label":"Visualize","docId":"guides/orms/sequelize/visualize","unlisted":false},{"type":"link","href":"/guides/orms/sequelize/declarative-migrations-with-actions","label":"Declarative Pipeline","docId":"guides/orms/sequelize/declarative-migrations-with-actions","unlisted":false},{"type":"link","href":"/guides/orms/sequelize/generate-models","label":"Generate Models","docId":"guides/orms/sequelize/generate-models","unlisted":false}],"collapsible":true,"href":"/guides/orms/sequelize"},{"type":"category","label":"SQLAlchemy","collapsed":true,"items":[{"type":"link","href":"/guides/orms/sqlalchemy/getting-started","label":"Getting Started","docId":"guides/orms/sqlalchemy/getting-started","unlisted":false},{"type":"link","href":"/guides/orms/sqlalchemy/standalone","label":"Standalone Mode","docId":"guides/orms/sqlalchemy/standalone","unlisted":false},{"type":"link","href":"/guides/orms/sqlalchemy/script","label":"Script Mode","docId":"guides/orms/sqlalchemy/script","unlisted":false},{"type":"link","href":"/guides/orms/sqlalchemy/row-level-security","label":"Row-Level Security","docId":"guides/orms/sqlalchemy/rls","unlisted":false},{"type":"link","href":"/guides/orms/sqlalchemy/triggers","label":"Triggers","docId":"guides/orms/sqlalchemy/triggers","unlisted":false},{"type":"link","href":"/guides/orms/sqlalchemy/extensions","label":"Extensions","docId":"guides/orms/sqlalchemy/extensions","unlisted":false}],"collapsible":true,"href":"/guides/orms/sqlalchemy"},{"type":"category","label":"Django","collapsed":true,"items":[{"type":"link","href":"/guides/orms/django/getting-started","label":"Getting Started","docId":"guides/orms/django/getting-started","unlisted":false},{"type":"link","href":"/guides/orms/django/linting","label":"Linting","docId":"guides/orms/django/linting","unlisted":false}],"collapsible":true,"href":"/guides/orms/django"},{"type":"category","label":"TypeORM","collapsed":true,"items":[{"type":"link","href":"/guides/orms/typeorm","label":"Getting Started","docId":"guides/orms/typeorm","unlisted":false},{"type":"link","href":"/guides/orms/typeorm/generate-entities","label":"Generate Entities","docId":"guides/orms/typeorm/generate-entities","unlisted":false}],"collapsible":true},{"type":"category","label":"More ORMs","collapsed":true,"items":[{"type":"link","href":"/guides/orms/doctrine","label":"Doctrine","docId":"guides/orms/doctrine","unlisted":false},{"type":"link","href":"/guides/orms/hibernate","label":"Hibernate","docId":"guides/orms/hibernate","unlisted":false},{"type":"link","href":"/guides/orms/efcore","label":"Entity Framework Core","docId":"guides/orms/efcore","unlisted":false},{"type":"link","href":"/guides/frameworks/sqlc-versioned","label":"sqlc (versioned)","docId":"guides/frameworks/sqlc-versioned","unlisted":false},{"type":"link","href":"/guides/frameworks/sqlc-declarative","label":"sqlc (declarative)","docId":"guides/frameworks/sqlc-declarative","unlisted":false},{"type":"link","href":"/guides/orms/beego","label":"beego","docId":"guides/orms/beego","unlisted":false},{"type":"link","href":"/guides/orms/bun","label":"Bun","docId":"guides/orms/bun","unlisted":false}],"collapsible":true}]},"docs":{"atlas-schema/atlas-schema":{"id":"atlas-schema/atlas-schema","title":"Manage Your Database Schema as Code","description":"Core Atlas schema documentation hub. Learn the structure, configuration, and supported formats (HCL, SQL, ORM) for defining and managing schemas with Atlas.","sidebar":"documentation"},"atlas-schema/external-schema":{"id":"atlas-schema/external-schema","title":"Schema as Code: ORMs and External Tools","description":"Integrate Atlas with external schema sources and ORMs. Learn to manage your database schema as code regardless of programming language or ORM.","sidebar":"documentation"},"atlas-schema/hcl-schema":{"id":"atlas-schema/hcl-schema","title":"Schema as Code: HCL Syntax","de
1scription":"Learn how to manage your database schema as code using Atlas\'s HCL schema language. This guide covers schema definitions, editor support, and examples for various databases.","sidebar":"documentation"},"atlas-schema/hcl-types":{"id":"atlas-schema/hcl-types","title":"HCL Column Types","description":"Reference for the column types Atlas HCL supports in MySQL, PostgreSQL, SQLite, SQL Server, ClickHouse, and Redshift, with the attributes each type accepts.","sidebar":"documentation"},"atlas-schema/hcl-variables":{"id":"atlas-schema/hcl-variables","title":"HCL Input Variables","description":"In some cases, it is desirable to reuse an Atlas HCL document in different contexts.","sidebar":"documentation"},"atlas-schema/projects":{"id":"atlas-schema/projects","title":"Atlas Project Configuration (atlas.hcl)","description":"Learn how to configure Atlas projects using atlas.hcl. Manage environments, variables, data sources, and migration and schema settings in one file.","sidebar":"documentation"},"atlas-schema/sql-schema":{"id":"atlas-schema/sql-schema","title":"SQL Schema: Syntax and Examples","description":"Learn how to define and manage your database schema using SQL syntax in Atlas. This guide covers dev databases, schema files, directories, directives, and more.","sidebar":"documentation"},"atlas-vs-others":{"id":"atlas-vs-others","title":"Atlas vs Flyway vs Liquibase vs ORMs","description":"Discover how Atlas compares to Flyway, Liquibase, and ORM-based migration tools. Learn why Atlas is a modern alternative for database schema migrations, with advanced automation, schema-as-code workflows, and seamless CI/CD integration.","sidebar":"documentation"},"cli-data-privacy":{"id":"cli-data-privacy","title":"Data Privacy and the CLI","description":"What data does the Atlas CLI collect?","sidebar":"documentation"},"cli-reference":{"id":"cli-reference","title":"CLI Reference","description":"Introduction","sidebar":"documentation"},"cloud/agents":{"id":"cloud/agents","title":"Atlas Agent","description":"Learn how to set up an Atlas Agent to connect to your database for features like Drift Detection and Schema monitoring."},"cloud/auditlog":{"id":"cloud/auditlog","title":"Atlas Cloud Audit Log","description":"Learn how to use the Atlas Cloud audit log to track user actions and configuration changes across your organization. This guide explains how to access the audit log, and includes step-by-step instructions and UI screenshots to help you forward logs and metrics to your Datadog instance.","sidebar":"documentation"},"cloud/aws-marketplace":{"id":"cloud/aws-marketplace","title":"Purchasing Atlas Pro through AWS Marketplace","description":"Learn how to purchase Atlas Pro through AWS Marketplace, connect your AWS subscription to your Atlas Cloud organization, and adjust your quantity of seats, projects, and databases.","sidebar":"documentation"},"cloud/bots":{"id":"cloud/bots","title":"Using Bot (API) Tokens in CI/CD with Atlas Pipelines","description":"Learn how to create and manage bot users in Atlas Cloud for automated tasks like schema changes and CI reporting.","sidebar":"documentation"},"cloud/deployment":{"id":"cloud/deployment","title":"Reporting Schema Migrations to Atlas Cloud","description":"Learn how to report schema migrations to Atlas Cloud, enabling streamlined deployment and management of migrations across environments.","sidebar":"documentation"}
1,"cloud/features/lineage-graph":{"id":"cloud/features/lineage-graph","title":"Column-Level Data Lineage","description":"Trace column-level data lineage across tables and views. Visualize how columns are derived, inspect transformation expressions, and map upstream and downstream dependencies.","sidebar":"documentation"},"cloud/features/pre-migration-checks":{"id":"cloud/features/pre-migration-checks","title":"Pre-migration Checks in Atlas Cloud","description":"Pre-migration checks allow you to run assertions on the target database before applying migrations, reducing the risk of migration failures.","sidebar":"documentation"},"cloud/features/registry":{"id":"cloud/features/registry","title":"Atlas Registry","description":"Push schemas and migration directories to Atlas Registry to keep one versioned source of truth, and pull them at deploy time instead of bundling them.","sidebar":"documentation"},"cloud/features/schema-docs":{"id":"cloud/features/schema-docs","title":"Schema Docs","description":"Atlas Registry provides automatically generated documentation for your database schema, keeping it up-to-date and easy to navigate.","sidebar":"documentation"},"cloud/features/security-graph":{"id":"cloud/features/security-graph","title":"Database Security Graph: Permissions, Misconfigurations, and CVEs","description":"Visualize roles, grants, and inheritance across a repository, and see which objects are flagged by Atlas\'s security analyzers.","sidebar":"documentation"},"cloud/features/slack":{"id":"cloud/features/slack","title":"Slack Notifications for Database CI/CD Pipelines","description":"Receive real-time notifications about your Atlas Cloud activity directly in Slack.","sidebar":"documentation"},"cloud/features/troubleshooting":{"id":"cloud/features/troubleshooting","title":"Troubleshooting Migrations","description":"Learn how to troubleshoot and triage database migration failures with Atlas Cloud. Use detailed deployment reports to quickly analyze errors in both single and multi-tenant environments.","sidebar":"documentation"},"cloud/getting-started":{"id":"cloud/getting-started","title":"Atlas Cloud: Schema Registry and Database CI","description":"Atlas Cloud is the schema registry and CI service for Atlas: store schemas and migration directories, review changes in pull requests, and manage Pro licenses.","sidebar":"documentation"},"cloud/pricing":{"id":"cloud/pricing","title":"Atlas Pricing Breakdown","description":"A detailed breakdown of how Atlas pricing works - CLI seats, CI/CD pipelines, and schema monitoring - and how billing is calculated for multi-tenant deployments. For plans and sign-up, see the Atlas pricing page.","sidebar":"documentation"},"cloud/roles-and-permissions":{"id":"cloud/roles-and-permissions","title":"Organization Roles vs. Protected Flows in Atlas Cloud","description":"Learn the difference between Atlas Cloud organization roles (Admin, Member, Viewer) and per-repository protected flow roles (Reviewer, Writer), and how to configure each.","sidebar":"guides"},"community-edition":{"id":"community-edition","title":"Community Edition","description":"Compare the Atlas Community Edition (open source, Apache 2.0) with the standard Atlas distribution, and learn how to install each.","sidebar":"documentation"},"components/atlas-features":{"id":"components/atlas-features","title":"atlas-features","description":"| Feature | Description |"},"components/backup-continuity-overview":{"id":"components/backup-continuity-overview","title":"backup-continuity-overview","description":"As part of a broader business continuity strategy, Atlas supports features that"},"components/file-suffix-table":{"id":"components/file-suffix-table","title":"file-suffix-table","description":"| Database | File Suffix |"},"components/login-required":{"id":"components/login-required","title":"login-required","description":"Atlas Pro"},"components/template-funcs":{"id":"components/template-funcs","title":"template-funcs","description":"Name"},"components/when-to-use-atlas":{"id":"components/when-to-use-atlas","title":"when-to-use-atlas","description":"1. You are building a Platform. If you are building an Internal Developer Platform (IDP) for your company and"},"concepts/concepts-url":{"id":"concepts/concepts-url","title":"URLs","description":"The URL format Atlas uses to connect to databases and load schemas: scheme, credentials, address, schema scope, SSL mode, and escaping special characters.","sidebar":"documentation"},"concepts/dev-database":{"id":"concepts/dev-database","title":"Dev Database","description":"Dev Database is an ephemeral database that Atlas uses to process and validate users\' schemas, migrations and more.","sidebar":"documentation"},"concepts/migration-directory-integrity":{"id":"concepts/migration-directory-integrity","title":"Migration Directory Integrity File","description":"How atlas.sum keeps a migration directory linear: the integrity file detects out-of-order or edited migrations and fails the run before they deploy.","sidebar":"documentation"},"concepts/workflows":{"id":"concepts/workflows","title":"Declarative (State-based) vs Versioned Migrations","description":"Learn about Atlas\'s two workflows for managing database schemas - declarative (state-based migrations) and versioned migrations - and how to combine them for maximum flexibility","sidebar":"documentation"}
1,"contributing":{"id":"contributing","title":"Contributing","description":"How to contribute to Atlas: file issues, write about it, or send code. Covers the code-generation, linting, formatting, and test steps CI runs on a PR.","sidebar":"documentation"},"custom-drivers":{"id":"custom-drivers","title":"Custom Drivers","description":"Install the Atlas drivers that ship outside the standard CLI release: Oracle, Snowflake, Google Spanner, and Databricks, then connect to those databases.","sidebar":"documentation"},"declarative/apply":{"id":"declarative/apply","title":"Declarative Schema Migrations","description":"Learn how to use Atlas for declarative schema migrations (sometimes called state-based migrations), enabling you to plan, review, and apply database schema migrations safely and automatically","sidebar":"documentation"},"declarative/diff":{"id":"declarative/diff","title":"Database Schema Diff - Comparing Schemas","description":"Compare database schemas with Atlas schema diff command. Generate SQL migration plans between MySQL, PostgreSQL, SQLite, SQL Server, ClickHouse, and Redshift. Free visual ERD comparison tool.","sidebar":"documentation"},"declarative/plan":{"id":"declarative/plan","title":"Pre-planning Schema Migrations","description":"Save a declarative migration plan with atlas schema plan so it can be reviewed, edited, and approved before atlas schema apply runs it against the database.","sidebar":"documentation"},"declarative/setup-cicd":{"id":"declarative/setup-cicd","title":"Setup CI/CD for Declarative Migrations","description":"Learn how to set up continuous integration and continuous deployment for your database schema migrations with Atlas. This guide covers CI (schema planning, pre-approval, ad-hoc approval, schema push) and CD (per-environment deployment) workflows for declarative migrations.","sidebar":"documentation"},"features":{"id":"features","title":"Feature Compatibility","description":"Which Atlas features are open-source and which require Atlas Pro, with per-database support tables for schema objects, linting rules, and data sources.","sidebar":"documentation"},"getting-started/declarative/mariadb-declarative-hcl":{"id":"getting-started/declarative/mariadb-declarative-hcl","title":"Getting started with HCL declarative migrations for a MariaDB schema","description":"Learn how to use Atlas to manage your MariaDB schema using HCL declarative schema migrations. This guide covers inspecting the database, planning changes, and applying them."},"getting-started/declarative/mariadb-declarative-sql":{"id":"getting-started/declarative/mariadb-declarative-sql","title":"Getting started with SQL declarative migrations for a MariaDB schema","description":"Learn how to use Atlas to manage your MariaDB schema with declarative migrations using SQL. This guide covers inspecting the database, planning changes, and applying them."},"getting-started/declarative/mysql-declarative-hcl":{"id":"getting-started/declarative/mysql-declarative-hcl","title":"Getting started with HCL declarative migrations for a MySQL schema","description":"Learn how to use Atlas to manage your MySQL schema with HCL declarative migrations. This guide covers inspecting the database, planning changes, and applying them."},"getting-started/declarative/mysql-declarative-sql":{"id":"getting-started/declarative/mysql-declarative-sql","title":"Getting started with SQL declarative migrations for a MySQL schema","description":"Learn how to use Atlas to manage your MySQL schema with declarative migrations using SQL. This guide covers inspecting the database, planning changes, and applying them."},"getting-started/declarative/postgresql-declarative-hcl":{"id":"getting-started/declarative/postgresql-declarative-hcl","title":"Getting started with HCL declarative migrations for a PostgreSQL schema","description":"Learn how to use Atlas to manage your PostgreSQL schema with declarative migrations using HCL. This guide covers inspecting the database, planning changes, and applying them."},"getting-started/declarative/postgresql-declarative-sql":{"id":"getting-started/declarative/postgresql-declarative-sql","title":"Getting started with SQL declarative migrations for a PostgreSQL schema","description":"Learn how to use Atlas to manage your PostgreSQL schema with declarative migrations using SQL. This guide covers inspecting the database, planning changes, and applying them."},"getting-started/declarative/sqlite-declarative-hcl":{"id":"getting-started/declarative/sqlite-declarative-hcl","title":"SQLite Migrations with Declarative HCL in Atlas","description":"Learn how to manage SQLite migrations and schemas using Atlas and declarative HCL. This step-by-step guide covers inspecting, editing, and applying schema changes for efficient SQLite schema management"},"getting-started/declarative/sqlite-declarative-sql":{"id":"getting-started/declarative/sqlite-declarative-sql","title":"SQLite Migrations with Declarative SQL
1in Atlas","description":"Learn how to manage SQLite migrations and schemas using Atlas with declarative SQL. This step-by-step guide covers inspecting, editing, and applying schema changes for efficient SQLite schema management."},"getting-started/getting-started":{"id":"getting-started/getting-started","title":"Getting Started with Atlas","description":"Get started with Atlas in 5 minutes. Define your schema, apply it to your database, and generate safe migrations - all from the CLI.","sidebar":"documentation"},"guides/ai-tools":{"id":"guides/ai-tools","title":"Using Atlas with AI Agents","description":"Set up AI agents to manage database schemas with Atlas: install the migration skill, provide structured schema context, and configure your agent.","sidebar":"guides"},"guides/ai-tools/agent-skills":{"id":"guides/ai-tools/agent-skills","title":"Atlas Agent Skill for Claude Code, Codex, and Cursor","description":"Install the Atlas agent skill for Claude Code, Codex, Cursor, and Copilot. Migrations, linting and custom rules, the testing framework, drift detection, Data Scripts, and Atlas Cloud status from one SKILL.md.","sidebar":"guides"},"guides/ai-tools/claude-code-instructions":{"id":"guides/ai-tools/claude-code-instructions","title":"Claude Code with Atlas","description":"Set up Claude Code for Atlas. Install the Atlas agent skill for migrations, Data Scripts, and Atlas Cloud status, add a migration subagent, slash-command skills, and a lint hook.","sidebar":"guides"},"guides/ai-tools/codex-instructions":{"id":"guides/ai-tools/codex-instructions","title":"OpenAI Codex with Atlas","description":"OpenAI Codex is OpenAI\'s agentic coding tool. It runs in","sidebar":"guides"},"guides/ai-tools/cursor-rules":{"id":"guides/ai-tools/cursor-rules","title":"Cursor with Atlas","description":"Cursor supports adding custom, natural language rules that guide the AI assistant\'s behavior.","sidebar":"guides"},"guides/ai-tools/github-copilot-instructions":{"id":"guides/ai-tools/github-copilot-instructions","title":"GitHub Copilot with Atlas","description":"GitHub Copilot supports adding custom, natural language instruction files that guide the agent\'s behavior.","sidebar":"guides"},"guides/atlas-in-docker":{"id":"guides/atlas-in-docker","title":"Running Atlas in Docker","description":"Learn how to run Atlas in Docker. This guide provides solutions for common issues, including how to log in to Atlas Pro and how to configure a dev database when using Docker.","sidebar":"guides"},"guides/backup-continuity-schema-declarative":{"id":"guides/backup-continuity-schema-declarative","title":"BCM/BCP for Declarative Schemas","description":"Configure BCM/BCP for Atlas declarative schema workflows with S3 backups and a full GitHub Actions example.","sidebar":"guides"},"guides/backup-continuity-versioned":{"id":"guides/backup-continuity-versioned","title":"Registry Backups for Versioned Migrations","description":"Configure BCM/BCP for Atlas versioned migrations with S3 backups and a complete GitHub Actions workflow.","sidebar":"guides"},"guides/ci-platforms/azure-devops-github":{"id":"guides/ci-platforms/azure-devops-github","title":"CI/CD for Databases with Azure DevOps and GitHub","description":"Learn how to integrate Atlas with Azure DevOps pipelines triggered by GitHub repositories. This guide covers setting up cross-platform CI/CD workflows for database schema migrations with GitHub-hosted code and Azure DevOps execution.","sidebar":"guides"},"guides/ci-platforms/azure-devops-repos":{"id":"guides/ci-platforms/azure-devops-repos","title":"CI/CD for Databases with Azure DevOps Repos","description":"Learn how to integrate Atlas with Azure DevOps Pipelines triggered by Azure Repos pull requests. This guide covers setting up complete CI/CD workflows for database schema migrations with code hosted in Azure DevOps repositories.","sidebar":"guides"},"guides/ci-platforms/bitbucket-declarative":{"id":"guides/ci-platforms/bitbucket-declarative","title":"CI/CD for Databases on Bitbucket Pipelines - Declarative Workflow","description":"Learn how to integrate Atlas with Bitbucket Pipelines to automate declarative database schema migrations. This guide covers schema planning, approvals, and deployment across multiple databases.","sidebar":"guides"},"guides/ci-platforms/bitbucket-versioned":{"id":"guides/ci-platforms/bitbucket-versioned","title":"CI/CD for Databases on Bitbucket Pipelines - Versioned Workflow","description":"Learn how to integrate Atlas with Bitbucket Pipelines to automate versioned database schema migrations. This guide covers schema linting, migration planning, and deployment across multiple databases.","sidebar":"guides"},"guides/ci-platforms/circleci-declarative":{"id":"guides/ci-platforms/circleci-declarative","title":"CI/CD for Databases on CircleCI - Declarative Workflow","description":"Learn how to integrate Atlas with CircleCI to automate declarative database schema migrations. This guide covers schema planning, approvals, and deployment across multiple databases.","sidebar":"guides"},"guides/ci-platforms/circleci-versioned":{"id":"guides/ci-platforms/circleci-versioned","title":"CI/CD for Databases on CircleCI - Versioned Workflow","description":"Learn how to integrate Atlas with CircleCI to automate versioned database schema migrations. This guide covers schema linting, migration planning, and deployment across multiple databases.","sidebar":"guides"},"guides/ci-platforms/github-declarative":{"id":"guides/ci-platforms/github-declarative","title":"CI/CD for Databases on GitHub Actions (Declarative)","description":"Learn how to integrate Atlas with GitHub Actions to automate and manage database schema migrations. This guide covers both versioned and declarative workflows, including schema linting, migration planning, approvals, and deployment across multiple databases.","sidebar":"guides"},"guides/ci-platforms/github-versioned":{"id":"guides/ci-platforms/github-versioned","title":"CI/CD for Databases on GitHub Actions (Versioned Migrations)","de
1scription":"Learn how to integrate Atlas with GitHub Actions to automate and manage database schema migrations. This guide covers both versioned and declarative workflows, including schema linting, migration planning, approvals, and deployment across multiple databases.","sidebar":"guides"},"guides/ci-platforms/gitlab-declarative":{"id":"guides/ci-platforms/gitlab-declarative","title":"CI/CD for Databases on GitLab (Declarative)","description":"Learn how to integrate Atlas with GitLab CI/CD to automate and manage database schema migrations.","sidebar":"guides"},"guides/ci-platforms/gitlab-versioned":{"id":"guides/ci-platforms/gitlab-versioned","title":"CI/CD for Databases on GitLab (Versioned Migrations)","description":"Learn how to integrate Atlas with GitLab CI/CD to automate and manage database schema migrations.","sidebar":"guides"},"guides/clickhouse/clickhouse-advanced-hcl-schema":{"id":"guides/clickhouse/clickhouse-advanced-hcl-schema","title":"Using SQL Expressions in ClickHouse HCL Schema","description":"Use the sql() function in a ClickHouse HCL schema for engines that take parameters, replicated and distributed tables, column defaults, and TTL expressions.","sidebar":"databases"},"guides/clickhouse/clickhouse-cloud-atlas":{"id":"guides/clickhouse/clickhouse-cloud-atlas","title":"Managing ClickHouse Cloud via Atlas","description":"This guide walks you through managing ClickHouse Cloud databases using Atlas, covering connection setup, development database considerations, and best practices for cloud environments.","sidebar":"databases"},"guides/clickhouse/clickhouse-supported-objects":{"id":"guides/clickhouse/clickhouse-supported-objects","title":"Supported Objects in ClickHouse","description":"Atlas provides comprehensive support for managing ClickHouse database objects using HCL schema definitions. Below is an overview of the objects you can manage.","sidebar":"databases"},"guides/clickhouse/getting-started-clickhouse":{"id":"guides/clickhouse/getting-started-clickhouse","title":"ClickHouse Migrations: Schema as Code with Atlas","description":"Manage ClickHouse schemas as code with Atlas. Inspect a live database, plan migrations automatically, and apply them declaratively or as versioned files.","sidebar":"databases"},"guides/clickhouse/lineage-graph":{"id":"guides/clickhouse/lineage-graph","title":"Column-Level Data Lineage for ClickHouse","description":"Trace column-level data lineage across tables and views of your ClickHouse database. Visualize how columns are derived, inspect transformation expressions, and map upstream and downstream dependencies.","sidebar":"databases"},"guides/clickhouse/managing-clickhouse-cluster":{"id":"guides/clickhouse/managing-clickhouse-cluster","title":"Managing Schema Changes in ClickHouse Clusters","description":"Manage schema changes on a ClickHouse cluster with Atlas: run a clustered dev database, enable ON CLUSTER, and handle replicated and distributed table engines.","sidebar":"databases"},"guides/clickhouse/managing-session-settings":{"id":"guides/clickhouse/managing-session-settings","title":"Managing ClickHouse Settings with Atlas","description":"Three ways to apply ClickHouse settings to Atlas operations: a settings profile for the Atlas user, connection URL parameters, or settings in migration files.","sidebar":"databases"},"guides/clickhouse/named-collections":{"id":"guides/clickhouse/named-collections","title":"Managing ClickHouse Named Collections with Atlas","description":"Define ClickHouse named collections as code. Atlas inspects, plans, and applies CREATE/ALTER/DROP NAMED COLLECTION statements automatically.","sidebar":"databases"},"guides/clickhouse/security-declarative":{"id":"guides/clickhouse/security-declarative","title":"ClickHouse Database Security as Code (Declarative)","description":"Define ClickHouse roles, users, and permissions as code. Atlas plans and applies changes automatically - no more manual GRANT/REVOKE drift.","sidebar":"databases"},"guides/clickhouse/security-versioned":{"id":"guides/clickhouse/security-versioned","title":"ClickHouse Database Security as Code (Versioned)","de
1scription":"Manage ClickHouse roles, users, and permissions through versioned migrations. Every security change goes through code review and CI before reaching production.","sidebar":"databases"},"guides/clickhouse/seed-data":{"id":"guides/clickhouse/seed-data","title":"Managing Seed & Lookup Data in ClickHouse","description":"Define ClickHouse lookup tables and seed data as code. Atlas computes INSERT, ALTER UPDATE, and ALTER DELETE statements automatically.","sidebar":"databases"},"guides/clickhouse/wasm":{"id":"guides/clickhouse/wasm","title":"Managing ClickHouse WASM Modules and WASM UDFs with Atlas","description":"Define ClickHouse WASM modules and WASM user defined functions as code. Atlas inspects, plans, and applies the SQL to create them automatically.","sidebar":"databases"},"guides/cockroachdb/getting-started-cockroachdb":{"id":"guides/cockroachdb/getting-started-cockroachdb","title":"Automatic CockroachDB Schema Migrations with Atlas","description":"Learn how to manage CockroachDB schemas with Atlas using both declarative and versioned workflows. This guide covers automatic CockroachDB schema migration, inspection, migration planning, and applying changes via CLI and CI/CD integrations.","sidebar":"databases"},"guides/compliance/drift-detection":{"id":"guides/compliance/drift-detection","title":"Detecting and Preventing Database Schema Drift","description":"Learn how Atlas detects and prevents database schema drift in versioned migration workflows. Compare the target database against the expected state at deploy time, monitor for out-of-band changes between deployments, and meet SOC 2, ISO 27002, PCI DSS, and HIPAA change-management requirements.","sidebar":"guides"},"guides/compliance/environment-promotion":{"id":"guides/compliance/environment-promotion","title":"Environment Promotion and Compliance","description":"Learn how Atlas supports environment promotion workflows for compliance-driven organizations. Understand how to implement progressive schema deployments across Dev, Staging, and Production environments while meeting SOC 2, ISO/IEC 27002, and other regulatory requirements.","sidebar":"guides"},"guides/compliance/environment-promotion-declarative":{"id":"guides/compliance/environment-promotion-declarative","title":"Environment Promotion for Declarative Schema Migrations","description":"Learn how to implement environment promotion workflows for declarative schema migrations with Atlas. Read the schema version deployed in lower environments from the Atlas Registry and promote the exact same version to production using data sources and pre-execution checks.","sidebar":"guides"},"guides/compliance/reviewed-approved-migrations":{"id":"guides/compliance/reviewed-approved-migrations","title":"Enforcing Reviewed and Approved Schema Migrations","description":"Learn how Atlas guarantees that only thoroughly reviewed, authorized, and SOC 2-compliant migrations are applied to your production databases. Understand the complete workflow from pull request validation to continuous deployment.","sidebar":"guides"},"guides/database-per-tenant/control-plane":{"id":"guides/database-per-tenant/control-plane","title":"Managing Multi-Tenant Migrations with Atlas Cloud Control Plane","description":"Learn how to use the Atlas Cloud Control Plane to manage migrations across multiple databases in a Database per Tenant architecture. This guide covers setting up Atlas Cloud, pushing projects, deploying migrations, and gaining visibility into deployments.","sidebar":"guides"},"guides/database-per-tenant/declarative":{"id":"guides/database-per-tenant/declarative","title":"Declarative Flow for Database-per-Tenant Architectures","description":"Manage tenant fleets with declarative schema migrations: define the desired schema once and let atlas schema apply converge every tenant database, with pre-approved plans for production.","sidebar":"guides"},"guides/database-per-tenant/deploying":{"id":"guides/database-per-tenant/deploying","title":"Deploying Schema Migrations to Database-per-Tenant Architecture","description":"Learn how to deploy migrations to target groups in a Database per Tenant architecture using Atlas CLI. This guide covers setting up target groups, creating initial migrations, and applying them to multiple tenant databases.","sidebar":"guides"}
1,"guides/database-per-tenant/intro":{"id":"guides/database-per-tenant/intro","title":"Database-per-Tenant Architectures with Atlas","description":"Learn how to use Atlas to manage database schemas in a Database per Tenant architecture, a common pattern for deploying multi-tenant applications.","sidebar":"guides"},"guides/database-per-tenant/rollout":{"id":"guides/database-per-tenant/rollout","title":"Staged Rollout Strategies for Multi-Tenant Schema Migrations","description":"Learn how to safely deploy schema migrations across hundreds of tenant databases using staged rollouts, canary deployments, parallel execution, and error handling with Atlas.","sidebar":"guides"},"guides/database-per-tenant/target-groups":{"id":"guides/database-per-tenant/target-groups","title":"Defining Target Groups for Multi-Tenant Deployments","description":"Learn how to define target groups in Atlas for managing multiple tenant databases in a Database per Tenant architecture.","sidebar":"guides"},"guides/database-schema-as-context":{"id":"guides/database-schema-as-context","title":"Database Schema as Context","description":"Learn how structured schema context improves AI-generated SQL accuracy. This guide covers the types of database context AI agents need, how to organize schema files for maximum context, and includes a benchmark comparing query accuracy with and without schema context.","sidebar":"guides"},"guides/databases":{"id":"guides/databases","title":"Database Guides","description":"All common open-source relational database management systems are supported in all versions of Atlas.","sidebar":"databases"},"guides/databricks/automatic-migrations":{"id":"guides/databricks/automatic-migrations","title":"Automatic Databricks Schema Migrations with Atlas","description":"Automatic Databricks schema migrations with Atlas, declarative and versioned. Covers inspection, migration planning, and applying changes via the CLI.","sidebar":"databases"},"guides/dbt/atlas-vs-dbt":{"id":"guides/dbt/atlas-vs-dbt","title":"Atlas vs dbt: Different Jobs, Better Together","description":"dbt and Atlas are not competing tools: dbt transforms data inside your schemas, Atlas manages the schema layer dbt sits on. What each one does with the same change, demonstrated on ClickHouse.","sidebar":"guides"},"guides/dbt/dbt-clickhouse":{"id":"guides/dbt/dbt-clickhouse","title":"ClickHouse and dbt: Managing the Schema Layer","description":"ClickHouse-specific decisions for a dbt project: MergeTree engine and ORDER BY on source tables, why changing ORDER BY rebuilds the table, schema-scope grants for dbt, and dimension data as code.","sidebar":"guides"},"guides/dbt/dbt-drift-detection":{"id":"guides/dbt/dbt-drift-detection","title":"Drift Detection for Your Warehouse","description":"Detect when a warehouse stops matching its checked-in schema while dbt keeps rebuilding models: what migrate status misses, how atlas schema diff reports drift, and what excluding dbt\'s database costs you.","sidebar":"guides"},"guides/dbt/large-table-migrations":{"id":"guides/dbt/large-table-migrations","title":"Safe DDL on Large Warehouse Tables","description":"Which ALTER statements rewrite data on a large warehouse table, which ones are metadata-only, and how to block a destructive change with Atlas lint and a pre-migration check.","sidebar":"guides"},"guides/dbt/schema-management":{"id":"guides/dbt/schema-management","title":"Schema Management for dbt Projects","description":"Manage the schema layer a dbt project runs on with Atlas: databases, source tables, lookup data, roles and grants, with dbt\'s own models left to dbt through exclude patterns in atlas.hcl.","sidebar":"guides"},"guides/deploying/aws-ecs-fargate":{"id":"guides/deploying/aws-ecs-fargate","title":"Running Schema Migrations on AWS ECS/Fargate using Atlas","description":"Learn how to deploy schema migrations to AWS ECS/Fargate using Atlas. This guide covers prerequisites, storing database credentials in Secrets Manager, reading secrets during deployment, and running migrations before the application starts.","sidebar":"guides"}
1,"guides/deploying/cloud-dir":{"id":"guides/deploying/cloud-dir","title":"Working with Atlas Registry","description":"Learn how to deploy migrations using Atlas Registry, enabling seamless migration management in CI/CD pipelines.","sidebar":"guides"},"guides/deploying/cloud-sql-via-github-actions":{"id":"guides/deploying/cloud-sql-via-github-actions","title":"Deploying schema migrations to Google Cloud SQL using Atlas and GitHub Actions","description":"Learn how to automate database schema migrations to Google Cloud SQL using GitHub Actions and Atlas. This guide covers secure authentication, Cloud SQL Auth Proxy setup, and best practices for CI/CD database deployments on Google Cloud Platform.","sidebar":"guides"},"guides/deploying/connect-to-db-from-github-actions":{"id":"guides/deploying/connect-to-db-from-github-actions","title":"Connecting to your database from GitHub Actions","description":"Learn how to connect Atlas to your database from GitHub Actions workflows. This guide covers different methods for allowing Atlas to interact with your database securely.","sidebar":"guides"},"guides/deploying/crossplane":{"id":"guides/deploying/crossplane","title":"Manage your database schema with Atlas using Crossplane","description":"This guide walks you through managing your database schema with Atlas on Kubernetes using Crossplane, a powerful control plane framework for managing infrastructure as code.","sidebar":"guides"},"guides/deploying/fly-io":{"id":"guides/deploying/fly-io","title":"Using Atlas with Fly.io","description":"Learn how to use Atlas to perform database schema migrations on Fly.io. This guide covers deploying with Docker, configuring release commands, managing secrets, and best practices for running migrations on Fly.io using Atlas.","sidebar":"guides"},"guides/deploying/helm":{"id":"guides/deploying/helm","title":"Deploying schema migrations to Kubernetes with Helm","description":"Learn how to deploy schema migrations to Kubernetes using Helm. This guide covers integrating Atlas migrations into Helm charts, using pre-upgrade hooks, and ensuring safe deployment practices.","sidebar":"guides"},"guides/deploying/image":{"id":"guides/deploying/image","title":"Building a Docker Image for Schema Migrations in CI Pipelines","description":"Learn how to build a Docker image for schema migrations in CI pipelines. This guide covers creating a dedicated container image with Atlas and migration files, and integrating it into GitHub Actions workflows.","sidebar":"guides"},"guides/deploying/intro":{"id":"guides/deploying/intro","title":"Deploying Schema Migrations","description":"Learn how to effectively deploy schema migrations as part of your deployment process. Understand the importance of treating schema changes as deployments and explore strategies for running migrations safely.","sidebar":"guides"},"guides/deploying/k8s-argo":{"id":"guides/deploying/k8s-argo","title":"GitOps for Database Schema Management with Argo CD and Atlas Kubernetes Operator (Versioned)","description":"Learn how to implement GitOps for database schema management using Argo CD and Atlas Kubernetes Operator. This guide covers the integration of Argo CD with Atlas Operator for automated deployments and schema management.","sidebar":"guides"},"guides/deploying/k8s-argo-declarative":{"id":"guides/deploying/k8s-argo-declarative","title":"GitOps for Database Schema Management with Argo CD and Atlas Kubernetes Operator (Declarative Flow)","description":"Learn how to implement GitOps for database schema management using Argo CD and Atlas Kubernetes Operator. This guide covers the integration of Argo CD with Atlas Operator for automated deployments and schema management.","sidebar":"guides"},"guides/deploying/k8s-cloud-versioned":{"id":"guides/deploying/k8s-cloud-versioned","title":"Deploying Versioned Migrations in Kubernetes from Atlas Schema Registry","description":"Learn how to deploy versioned migrations in Kubernetes using Atlas Schema Registry. This guide covers the prerequisites, steps, and best practices for managing migrations in a Kubernetes environment.","sidebar":"guides"}
1,"guides/deploying/k8s-flux":{"id":"guides/deploying/k8s-flux","title":"Deploy Database Schema Migrations in Kubernetes with Flux CD and Atlas Kubernetes Operator","description":"Learn how to deploy database schema migrations in Kubernetes using Flux CD and Atlas Kubernetes Operator. This guide covers the prerequisites, steps, and best practices for managing migrations in a Kubernetes environment.","sidebar":"guides"},"guides/deploying/k8s-init-containers":{"id":"guides/deploying/k8s-init-containers","title":"Run Database Schema Migrations in Kubernetes Using Init Containers","description":"Learn how to run database schema migrations in Kubernetes using init containers. Understand the benefits of using init containers for migrations and how to implement them in your Kubernetes deployment.","sidebar":"guides"},"guides/deploying/k8s-operator-certs":{"id":"guides/deploying/k8s-operator-certs","title":"Using SSL Certs with the Atlas Operator","description":"Learn how to use SSL/TLS certificates with the Atlas Operator on Kubernetes. This guide provides step-by-step instructions for creating a secret, mounting certificates, and using them in database URLs.","sidebar":"guides"},"guides/deploying/rds-iam-migration-role":{"id":"guides/deploying/rds-iam-migration-role","title":"Manage AWS RDS PostgreSQL roles and schema with Atlas, Terraform, and IAM authentication","description":"Use Atlas and Terraform to bootstrap a dedicated migration user on AWS RDS PostgreSQL, manage roles in one state, and manage application schema in a separate IAM-authenticated state.","sidebar":"guides"},"guides/deploying/secrets":{"id":"guides/deploying/secrets","title":"Secrets and IAM Authentication: Best Practices for Managing Database Credentials in Atlas","description":"Learn how to securely manage database credentials in Atlas using secret stores and IAM authentication. This guide covers best practices for handling sensitive information in your Atlas projects.","sidebar":"guides"},"guides/destructive-change-policy":{"id":"guides/destructive-change-policy","title":"Destructive Change Policy: Prevent Accidental Data Loss with Deprecation Workflows","description":"Block accidental DROP TABLE and DROP COLUMN in CI with the Atlas destructive analyzer. Run a real deprecation workflow with allowlist patterns. Strip drops from the diff entirely on high-stakes environments.","sidebar":"guides"},"guides/dsql/getting-started-dsql":{"id":"guides/dsql/getting-started-dsql","title":"Automatic Aurora DSQL Schema Migrations with Atlas","description":"Learn how to manage AWS Aurora DSQL schemas with Atlas using both declarative and versioned workflows. This guide covers automatic DSQL schema migration, inspection, migration planning, and applying changes via CLI and CI/CD integrations.","sidebar":"databases"},"guides/dsql/token-generator-dsql":{"id":"guides/dsql/token-generator-dsql","title":"Generate Aurora DSQL auth tokens with Atlas","description":"Generate Aurora DSQL auth tokens in atlas.hcl with the aws_dsql_token data source and use them for schema inspection and migrations.","sidebar":"databases"},"guides/evaluation/advanced-topics":{"id":"guides/evaluation/advanced-topics","title":"Atlas Features and Integrations","description":"Explore Atlas features beyond the basics: database security as code, AI agent integration with GitHub Copilot and Claude Code, schema and migration testing, custom linting rules, schema ownership policies, column-level lineage, drift detection, multi-tenant support, and environment promotion.","sidebar":"eval"},"guides/evaluation/ci-cd":{"id":"guides/evaluation/ci-cd","title":"Database CI/CD with Atlas","description":"Set up database CI/CD with Atlas: automatically lint and validate schema changes on every pull request, push approved migrations to the Schema Registry, and deploy to production via GitHub Actions, GitLab CI, Kubernetes, Terraform, ArgoCD, and more.","sidebar":"eval"},"guides/evaluation/connect":{"id":"guides/evaluation/connect","title":"Connect to your database","description":"Connect Atlas to your database using a standard URL format. Examples for PostgreSQL, MySQL, MariaDB, SQLite, SQL Server, ClickHouse, Oracle, Snowflake, Spanner, Databricks, and more.","sidebar":"eval"},"guides/evaluation/developer-workflow":{"id":"guides/evaluation/developer-workflow","title":"Schema Change Workflow","description":"Day-to-day Atlas workflow for both versioned and declarative migrations: edit your schema, generate or plan a migration, review the SQL, and apply it to your database.","sidebar":"eval"},"guides/evaluation/install":{"id":"guides/evaluation/install","title":"Installing Atlas","description":"Install the Atlas CLI on macOS, Linux, Windows, Docker, or CI. Includes custom driver builds for Oracle, Snowflake, Spanner, and Databricks.","sidebar":"eval"},"guides/evaluation/intro":{"id":"guides/evaluation/intro","title":"Evaluating Atlas","description":"A step-by-step guide for evaluating Atlas as your database schema management tool. Covers installation, schema-as-code, developer workflow, CI/CD, deployment, monitoring, and more.","sidebar":"eval"},"guides/evaluation/project-structure":{"id":"guides/evaluation/project-structure","title":"Setting Up Your Project","description":"Set up your Atlas project: choose between versioned and declarative workflows, configure atlas.hcl, and organize your schema and migration directories.","sidebar":"eval"},"guides/evaluation/schema-as-code":{"id":"guides/evaluation/schema-as-code","title":"Define Your Schema as Code","description":"Define your database schema as code using HCL, SQL, or your ORM (GORM, Django, Prisma, Drizzle, and more). Compare options for familiarity, dependency ordering, and editor support.","sidebar":"eval"},"guides/evaluation/setup-migrations":{"id":"guides/evaluation/setup-migrations","title":"Setup Your Migration Workflow","description":"Set up your Atlas migration workflow: versioned migrations with baseline creation, or declarative state-based migrations. Includes importing from Flyway, Liquibase, and other tools.","sidebar":"eval"},"guides/evaluation/verify-atlas":{"id":"guides/evaluation/verify-atlas","title":"Verify Atlas and Export Your Schema","description":"Export your database schema to HCL or SQL code, configure a dev database, and verify Atlas produces a zero-diff against your live database.","sidebar":"eval"},"guides/frameworks/sqlc-declarative":{"id":"guides/frameworks/sqlc-declarative","title":"Declarative SQLc Migrations with Atlas","description":"A guide to declarative sqlc migrations with Atlas. Learn how to manage your database schema as code and automatically sync it to your database.","sidebar":"orms"},"guides/frameworks/sqlc-versioned":{"id":"guides/frameworks/sqlc-versioned","title":"Versioned SQLc Migrations with Atlas","description":"A guide to versioned sqlc migrations with Atlas. Learn how to automatically plan and manage versioned SQL migration files for your Go projects.","sidebar":"orms"},"guides/getting-started-azure-fabric":{"id":"guides/getting-started-azure-fabric","title":"Azure Fabric Data Warehouse Schema Migrations","description":"Azure Fabric Data Warehouse schema migrations with Atlas, declarative and versioned. Covers inspection, migration planning, and CI/CD integrations.","sidebar":"databases"},"guides/getting-started-mssql":{"id":"guides/getting-started-mssql","title":"Automatic SQL Server Schema Migrations with Atlas","description":"SQL Server (MSSQL) sc
1hema migrations with Atlas, declarative and versioned. Covers inspection, migration planning, and CI/CD integrations.","sidebar":"databases"},"guides/go-templates":{"id":"guides/go-templates","title":"Customize Inspection Output with Go Templates","description":"Format atlas schema inspect output with Go templates: select fields from the inspected schema, use the built-in template functions, and generate files.","sidebar":"guides"},"guides/go-templates/exporter":{"id":"guides/go-templates/exporter","title":"Exporting Custom Metadata with the Template Exporter","description":"Generate files from your schema with the Atlas template exporter: attach annotations to tables and columns, then render Hasura, GraphQL, or OpenAPI output.","sidebar":"guides"},"guides/graphql-with-atlas":{"id":"guides/graphql-with-atlas","title":"Generate GraphQL Schemas from Your Database Schema with Atlas","description":"End-to-end guide for keeping GraphQL schemas in sync with your PostgreSQL schema using Atlas. Define tables and API metadata together, generate migrations, export SDL automatically, and deploy through Atlas Cloud.","sidebar":"guides"},"guides/guides":{"id":"guides/guides","title":"Atlas Guides","description":"Atlas guides for deploying schema changes, integrating Atlas with your tools, and working with databases, ORMs, CI/CD platforms, testing, and compliance.","sidebar":"guides"},"guides/horizondb/automatic-migrations":{"id":"guides/horizondb/automatic-migrations","title":"Automatic Schema Migrations for Azure HorizonDB with Atlas","description":"Learn how to manage HorizonDB schemas with Atlas using both declarative and versioned workflows. This guide covers automatic HorizonDB schema migration, inspection, migration planning, and applying changes via CLI and CI/CD integrations.","sidebar":"databases"},"guides/lock-safe-not-null":{"id":"guides/lock-safe-not-null","title":"Safe NOT NULL Migrations on PostgreSQL: Avoid Aborted Deploys and Table Locks","description":"Add NOT NULL constraints on PostgreSQL without aborting migrations or locking tables. Atlas\'s not_null diff policy emits an MF104 pre-migration check and a lock-safe NOT VALID plan validated under a weaker lock.","sidebar":"guides"},"guides/migration-dirs/template-directory":{"id":"guides/migration-dirs/template-directory","title":"Working with template directories","description":"Learn how to create and use template-based migration directories in Atlas. This guide covers the creation of dynamic directories using Go templates, injecting data variables, and running migrations with Atlas.","sidebar":"guides"},"guides/migration-tools/atlas-vs-alembic":{"id":"guides/migration-tools/atlas-vs-alembic","title":"Atlas vs Alembic: Why Modern Teams Choose Atlas","description":"Compare Atlas vs Alembic for database schema migration and management in Python and beyond - autogenerate, rollbacks, linting, testing, and CI/CD.","sidebar":"guides"},"guides/migration-tools/atlas-vs-flyway":{"id":"guides/migration-tools/atlas-vs-flyway","title":"Atlas vs Flyway (Redgate): Why Modern Teams Choose Atlas","description":"Compare Atlas vs Flyway for database schema migration and management.","sidebar":"guides"},"guides/migration-tools/atlas-vs-liquibase":{"id":"guides/migration-tools/atlas-vs-liquibase","title":"Atlas vs Liquibase: Why Modern Teams Choose Atlas","description":"Compare Atlas vs Liquibase for database schema migration and management. See why Atlas is the modern Liquibase alternative with automatic migration planning, schema-as-code, and GitOps-native CI/CD.","sidebar":"guides"},"guides/migration-tools/atlas-vs-schemachange":{"id":"guides/migration-tools/atlas-vs-schemachange","title":"Atlas vs schemachange: Snowflake Schema Management","description":"Compare Atlas and schemachange for Snowflake schema changes, CI/CD, safety checks, and schema-as-code workflows.","sidebar":"guides"},"guides/migration-tools/atlas-vs-ssdt":{"id":"guides/migration-tools/atlas-vs-ssdt","title":"Atlas vs SSDT: Why Modern Teams Choose Atlas","description":"Compare Atlas vs SQL Server Data Tools (SSDT) for database schema migration and management.","sidebar":"guides"},"guides/migration-tools/flyway-snapshot-alternative":{"id":"guides/migration-tools/flyway-snapshot-alternative","title":"Flyway Snapshot Alternative in Atlas","description":"Learn how to use Atlas schema inspect as a free alternative to Flyway\'s snapshot command for capturing database schema states.","sidebar":"guides"},"guides/migration-tools/flyway-undo-alternative":{"id":"guides/migration-tools/flyway-undo-alternative","title":"Flyway Undo Alternative in Atlas","description":"Learn how Atlas Migrate Down provides a modern, safe alternative to Flyway\'s undo scripts with automatic generation and built-in safety checks.","sidebar":"guides"},"guides/migration-tools/golang-migrate":{"id":"guides/migration-tools/golang-migrate","title":"Automatic Migrations for golang-migrate","description":"Use Atlas to plan golang-migrate migrations automatically: define the desired schema, diff it against the migration directory, and write the SQL files.","sidebar":"guides"},"guides/migration-tools/goose-import":{"id":"guides/migration-tools/goose-import","title":"Importing a Goose project to Atlas","description":"Import an existing goose project into Atlas: convert the migration files to an Atlas migration directory and set the baseline version on the target database.","sidebar":"guides"},"guides/migration-tools/liquibase-diff-alternative":{"id":"guides/migration-tools/liquibase-diff-alternative","title":"Liquibase Diff Alternative in Atlas","description":"Learn how to use Atlas schema diff and inspect as a modern alternative to Liquibase\'s diff and diff-changelog commands for comparing database schemas.","sidebar":"guides"},"guides/migration-tools/liquibase-rollback-alternative":{"id":"guides/migration-tools/liquibase-rollback-alternative","title":"Liquibase Rollback Alternative in Atlas","description":"Learn how Atlas Migrate Down provides a modern, safe alternative to Liquibase\'s rollback with automatic generation and built-in safety checks.","sidebar":"guides"},"guides/migration-tools/migrate-flyway-to-atlas":{"id":"guides/migration-tools/migrate-flyway-to-atlas","title":"Migrating from Flyway to Atlas","description":"Learn how to migrate your Flyway-based project to Atlas for modern schema management.","sidebar":"guides"},"guides/modern-database-ci-cd":{"id":"guides/modern-database-ci-cd","title":"Modern Database CI/CD with Atlas","description":"Learn how to set up a complete CI/CD workflow for database schema changes using Atlas. This guide covers best practices for planning, validating, and deploying schema migrations automatically with GitHub Actions, GitLab CI, and Atlas Cloud.","sidebar":"guides"},"guides/mssql/security-declarative":{"id":"guides/mssql/security-declarative","title":"SQL Server Database Security as Code (Declarative)","description":"Define SQL Server roles, users, permissions, and user-defined types as code. Atlas plans and applies changes automatically - no more manual GRANT/REVOKE drift.","sidebar":"databases"},"guides/mssql/security-versioned":{"id":"guides/mssql/security-versioned","title":"SQL Server Database Security as Code (Versioned)","de
1scription":"Manage SQL Server roles, users, permissions, and user-defined types through versioned migrations. Every security change goes through code review and CI before reaching production.","sidebar":"databases"},"guides/mssql/seed-data":{"id":"guides/mssql/seed-data","title":"Managing Seed & Lookup Data in SQL Server","description":"Define SQL Server lookup tables and seed data as code. Atlas computes INSERT, UPDATE, and DELETE statements automatically.","sidebar":"databases"},"guides/mysql/check-constraint":{"id":"guides/mysql/check-constraint","title":"CHECK Constraint in MySQL","description":"Learn how to use CHECK constraints in MySQL to enforce data integrity. This guide covers syntax, examples, and how to manage CHECK constraints with Atlas.","sidebar":"databases"},"guides/mysql/descending-indexes":{"id":"guides/mysql/descending-indexes","title":"Descending Indexes in MySQL","description":"Learn how to create and use descending indexes in MySQL to optimize queries with ORDER BY clause, and how to manage them using Atlas.","sidebar":"databases"},"guides/mysql/functional-indexes":{"id":"guides/mysql/functional-indexes","title":"Functional Indexes in MySQL","description":"Learn how to create and manage functional indexes in MySQL to optimize query performance using expressions and functions.","sidebar":"databases"},"guides/mysql/generated-columns":{"id":"guides/mysql/generated-columns","title":"Generated Columns in MySQL with Atlas","description":"Learn how to use generated columns in MySQL with Atlas. Understand the difference between stored and virtual generated columns, their limitations, and how to implement them using Atlas HCL schema."},"guides/mysql/lineage-graph":{"id":"guides/mysql/lineage-graph","title":"Column-Level Data Lineage for MySQL","description":"Trace column-level data lineage across tables and views of your MySQL database. Visualize how columns are derived, inspect transformation expressions, and map upstream and downstream dependencies.","sidebar":"databases"},"guides/mysql/mysql-automatic-migrations":{"id":"guides/mysql/mysql-automatic-migrations","title":"Automatic MySQL Schema Migrations with Atlas","description":"MySQL schema migrations with Atlas, declarative and versioned. Covers inspection, migration planning, and CI/CD integrations.","sidebar":"databases"},"guides/mysql/mysql-cd-101":{"id":"guides/mysql/mysql-cd-101","title":"Detecting drops of foreign key constraints on MySQL","description":"Learn how to detect the dropping of foreign key constraints in MySQL databases using Atlas\'s linting capabilities. Understand the implications of dropping foreign keys and how to prevent accidental drops.","sidebar":"databases"},"guides/mysql/mysql-ds-103":{"id":"guides/mysql/mysql-ds-103","title":"Preventing accidental column deletion on MySQL","description":"Learn how to prevent accidental column deletion in MySQL databases using Atlas\'s linting capabilities. Understand the impact of dropping columns and how to enforce policies against destructive changes.","sidebar":"databases"},"guides/mysql/mysql-my-102":{"id":"guides/mysql/mysql-my-102","title":"Detecting inline REFERENCES clauses (MY102)","description":"Learn how to detect inline REFERENCES clauses in MySQL using Atlas\'s linting capabilities. Understand the implications of inline foreign key constraints and how to prevent them in your migrations.","sidebar":"databases"},"guides/mysql/prefix-indexes":{"id":"guides/mysql/prefix-indexes","title":"Prefix Indexes in MySQL","description":"Learn how to create and use prefix indexes in MySQL to optimize query performance and reduce storage space. Understand the syntax, examples, and benefits of using prefix indexes.","sidebar":"databases"},"guides/mysql/security-declarative":{"id":"guides/mysql/security-declarative","title":"MySQL Database Security as Code (Declarative)","description":"Define MySQL roles, users, and permissions as code. Atlas plans and applies changes automatically - no more manual GRANT/REVOKE drift.","sidebar":"databases"},"guides/mysql/security-versioned":{"id":"guides/mysql/security-versioned","title":"MySQL Database Security as Code (Versioned)","de
1scription":"Manage MySQL roles, users, and permissions through versioned migrations. Every security change goes through code review and CI before reaching production.","sidebar":"databases"},"guides/mysql/seed-data":{"id":"guides/mysql/seed-data","title":"Managing Seed & Lookup Data in MySQL","description":"Define lookup tables and seed data as code. Atlas computes INSERT, UPDATE, and DELETE statements automatically.","sidebar":"databases"},"guides/mysql/terraform-mysql-rds":{"id":"guides/mysql/terraform-mysql-rds","title":"Manage MySQL on RDS with Terraform and Atlas","description":"Learn how to manage MySQL on AWS RDS using Terraform and Atlas. This guide covers provisioning, schema management, and evolving schemas with Atlas HCL.","sidebar":"databases"},"guides/openapi-with-atlas":{"id":"guides/openapi-with-atlas","title":"Generate OpenAPI Specs from Your Database Schema with Atlas","description":"End-to-end guide for keeping OpenAPI specifications in sync with your PostgreSQL schema using Atlas. Define tables and API metadata together, generate migrations, export specs automatically, and deploy through Atlas Cloud.","sidebar":"guides"},"guides/oracle/oracle-automatic-migrations":{"id":"guides/oracle/oracle-automatic-migrations","title":"Automatic Oracle Schema Migrations with Atlas","description":"Learn how to manage Oracle schemas with Atlas using both declarative and versioned workflows. This guide covers automatic Oracle schema migration, inspection, migration planning, and applying changes via CLI and CI/CD integrations.","sidebar":"databases"},"guides/oracle/oracle-security-declarative":{"id":"guides/oracle/oracle-security-declarative","title":"Oracle Database Security as Code (Declarative)","description":"Define Oracle roles, privileges, and grants as code. Atlas diffs the live database against your desired state and applies the exact GRANT/REVOKE changes - no more manual grant drift.","sidebar":"databases"},"guides/oracle/oracle-security-versioned":{"id":"guides/oracle/oracle-security-versioned","title":"Oracle Database Security as Code (Versioned)","description":"Define Oracle roles, privileges, and grants as code. Atlas plans GRANT/REVOKE changes into reviewable, versioned migration files - no more manual grant drift.","sidebar":"databases"},"guides/oracle/oracle-vector":{"id":"guides/oracle/oracle-vector","title":"Oracle VECTOR Columns with Atlas (23ai+)","description":"Define, migrate, and manage Oracle VECTOR columns using Atlas. Covers all dimension, format, and storage variants introduced in Oracle 23ai, including fixed, flexible, sparse, and BINARY vectors.","sidebar":"databases"},"guides/orms/beego":{"id":"guides/orms/beego","title":"Beego ORM Migrations with Atlas","description":"Plan database migrations for Beego ORM models with Atlas: load the models as the desired schema, diff against the migration directory, generate SQL.","sidebar":"orms"},"guides/orms/bun":{"id":"guides/orms/bun","title":"Automatic Bun Migrations with Atlas","description":"A guide to automatic Bun migrations with Atlas. Learn how to automatically plan and generate schema migrations for your Go projects using Bun ORM.","sidebar":"orms"},"guides/orms/django":{"id":"guides/orms/django","title":"Automatic Django Migrations with Atlas","description":"A guide to automatic Django migrations with Atlas. Go beyond Django\'s native makemigrations with advanced CI/CD, declarative workflows, and support for advanced database features.","sidebar":"orms"},"guides/orms/django/getting-started":{"id":"guides/orms/django/getting-started","title":"Automatic Schema Migration Planning for Django","description":"Learn how to integrate Atlas with Django to automate schema migration planning. This guide covers installation, setup, and usage of the Atlas Django Provider.","sidebar":"orms"},"guides/orms/django/linting":{"id":"guides/orms/django/linting","title":"Linting Django Schemas","description":"Learn how to lint your Django schemas with Atlas.","sidebar":"orms"},"guides/orms/doctrine":{"id":"guides/orms/doctrine","title":"Automatic Doctrine Migrations with Atlas","description":"A guide to automatic Doctrine migrations with Atlas. Go beyond Doctrine\'s native tools with advanced CI/CD, declarative workflows, and support for advanced database features.","sidebar":"orms"}
1,"guides/orms/drizzle":{"id":"guides/orms/drizzle","title":"Automatic Drizzle Migrations with Atlas","description":"A guide to automatic Drizzle migrations with Atlas. Go beyond Drizzle\'s native migrate command with advanced CI/CD, declarative workflows, and visual schema management.","sidebar":"orms"},"guides/orms/drizzle/existing-project":{"id":"guides/orms/drizzle/existing-project","title":"Integrating Atlas with an existing Drizzle project","description":"Learn how to integrate Atlas with an existing Drizzle project to manage migrations and untracked objects. This guide covers installation, configuration, and using Atlas to plan migrations for your Drizzle schema.","sidebar":"orms"},"guides/orms/drizzle/getting-started":{"id":"guides/orms/drizzle/getting-started","title":"Setting up Drizzle with Atlas","description":"Learn how to set up Drizzle ORM with Atlas for advanced database schema management. This guide covers installation, configuration, and using Atlas to manage your Drizzle schema effectively.","sidebar":"orms"},"guides/orms/drizzle/triggers":{"id":"guides/orms/drizzle/triggers","title":"Drizzle Triggers: A Guide to Managing Database Triggers","description":"Learn what Drizzle Triggers are and how to use them to manage database triggers in your Drizzle ORM projects. This guide covers use cases and setup for auditing changes in a PostgreSQL database using Atlas.","sidebar":"orms"},"guides/orms/drizzle/visualize":{"id":"guides/orms/drizzle/visualize","title":"Visualizing Drizzle Schemas","description":"Learn how to visualize your Drizzle schema using Atlas to generate an interactive ERD (Entity-Relationship Diagram). This guide walks through setup, configuration, and generating a shareable schema diagram directly from your TypeScript models.","sidebar":"orms"},"guides/orms/efcore":{"id":"guides/orms/efcore","title":"Automatic Entity Framework Core (EF Core) Migrations with Atlas","description":"A guide to automatic Entity Framework Core (EF Core) migrations with Atlas. Go beyond native EF Core migrations with advanced CI/CD, declarative workflows, and support for advanced database features.","sidebar":"orms"},"guides/orms/gorm":{"id":"guides/orms/gorm","title":"Automatic GORM Migrations with Atlas","description":"Learn how to manage your GORM migrations with Atlas for advanced schema management and CI/CD workflows. Go beyond AutoMigrate with versioned and declarative migrations, CI/CD, and visual schema tools.","sidebar":"orms"},"guides/orms/gorm/composite-types":{"id":"guides/orms/gorm/composite-types","title":"Using Composite Types in GORM","description":"Learn how to manage database schema migrations that include PostgreSQL composite types in your GORM projects using Atlas. This guide explains how to define and use composite types in your schema, and manage them together with your GORM models as part of your migration workflow.","sidebar":"orms"},"guides/orms/gorm/domain-types":{"id":"guides/orms/gorm/domain-types","title":"Using Domain Types in GORM","description":"Learn how to manage database schema migrations that include PostgreSQL domain types in your GORM projects using Atlas. This guide explains how to define and use domain types in your schema, and manage them together with your GORM models as part of your migration workflow.","sidebar":"orms"},"guides/orms/gorm/enum-types":{"id":"guides/orms/gorm/enum-types","title":"Using Postgres Enum Types in GORM","description":"Learn how to include PostgreSQL enum types in your GORM schema migrations using Atlas, and manage both custom enums and models in one workflow.","sidebar":"orms"},"guides/orms/gorm/extensions":{"id":"guides/orms/gorm/extensions","title":"Using Postgres Extensions in GORM","description":"Learn how to manage database schema migrations that include Postgres extensions in your GORM projects using Atlas.","sidebar":"orms"},"guides/orms/gorm/generate-models":{"id":"guides/orms/gorm/generate-models","title":"Generate GORM Models (Go Code) from a Database Schema","description":"Learn how to generate GORM model structs from your existing database schema using Atlas templates and the `--format` flag.","sidebar":"orms"},"guides/orms/gorm/getting-started":{"id":"guides/orms/gorm/getting-started","title":"Automatic Schema Migration Planning for GORM","description":"Learn how to manage and automate database schema migrations in Go projects that use GORM, with Atlas. This guide shows how to generate, version, and apply migration files for your GORM models.","sidebar":"orms"},"guides/orms/gorm/program":{"id":"guides/orms/gorm/program","title":"Automatic Schema Migrations for GORM (Program Mode)","description":"Learn how to load your GORM sc
1hema into Atlas using Go Program Mode. This guide is ideal for projects with models across multiple packages or without standard GORM annotations, enabling advanced control over schema introspection and migration planning.","sidebar":"orms"},"guides/orms/gorm/rls":{"id":"guides/orms/gorm/rls","title":"Using Row-Level Security in GORM","description":"Learn how to define and manage PostgreSQL Row-Level Security (RLS) policies alongside GORM models using Atlas. This guide walks through combining GORM types and custom SQL policies into a single migration plan using composite schemas.","sidebar":"orms"},"guides/orms/gorm/standalone":{"id":"guides/orms/gorm/standalone","title":"Automatic Schema Migrations for GORM (Standalone Mode)","description":"Use Atlas Standalone Mode to automatically load GORM models and manage schema migrations. This guide is ideal for typical GORM setups where models are in a single package with standard annotations.","sidebar":"orms"},"guides/orms/gorm/triggers":{"id":"guides/orms/gorm/triggers","title":"Using Database Triggers in GORM","description":"Learn how to manage database schema migrations that include PostgreSQL triggers in your GORM projects using Atlas. This guide shows how to define triggers, combine them with your GORM models, and manage them together as part of your schema migration workflow.","sidebar":"orms"},"guides/orms/gorm/views":{"id":"guides/orms/gorm/views","title":"Using Database Views in GORM","description":"Learn how to define and manage database views in your GORM projects using Atlas. This guide shows how to create view-based models, generate migrations for them, and integrate views seamlessly with your existing GORM schema.","sidebar":"orms"},"guides/orms/gorm/visualize":{"id":"guides/orms/gorm/visualize","title":"Visualizing GORM Schemas","description":"Learn how to visualize your GORM schema using Atlas to generate an interactive ERD (Entity-Relationship Diagram). This guide walks through setup, configuration, and generating a shareable schema diagram directly from your Go models.","sidebar":"orms"},"guides/orms/hibernate":{"id":"guides/orms/hibernate","title":"Automatic Hibernate Migrations with Atlas","description":"A guide to automatic Hibernate migrations with Atlas. Go beyond Hibernate\'s native schema generation with advanced CI/CD, declarative workflows, and support for advanced database features.","sidebar":"orms"},"guides/orms/prisma":{"id":"guides/orms/prisma","title":"Automatic Prisma Migrations with Atlas","description":"A guide to automatic Prisma migrations with Atlas. Go beyond Prisma\'s native migrate command with advanced CI/CD, declarative workflows, and support for database features like triggers and RLS policies.","sidebar":"orms"},"guides/orms/prisma/existing-project":{"id":"guides/orms/prisma/existing-project","title":"Integrating Atlas with an existing Prisma project","description":"Learn how to integrate Atlas with an existing Prisma project to manage schema migrations and untracked objects. This guide covers installation, configuration, and automatic migration planning.","sidebar":"orms"},"guides/orms/prisma/getting-started":{"id":"guides/orms/prisma/getting-started","title":"Setting up Prisma with Atlas","description":"Learn how to set up Prisma with Atlas for advanced database schema management. This guide covers installation, configuration, and automatic migration planning.","sidebar":"orms"},"guides/orms/prisma/lint-naming":{"id":"guides/orms/prisma/lint-naming","title":"Enforce naming conventions for Prisma using Atlas","description":"Learn how to enforce naming conventions for Prisma models (tables) and fields (columns) using Atlas. This guide covers custom naming with Prisma directives and linting with Atlas.","sidebar":"orms"},"guides/orms/prisma/partial-indexes":{"id":"guides/orms/prisma/partial-indexes","title":"Using PostgreSQL Partial Indexes in Prisma with Atlas","description":"Learn how to implement PostgreSQL partial indexes in Prisma using Atlas. This guide covers defining partial indexes, configuring Atlas, and managing migrations.","sidebar":"orms"},"guides/orms/prisma/rls":{"id":"guides/orms/prisma/rls","title":"Using Row-Level Security in Prisma","description":"Learn how to implement PostgreSQL Row-Level Security (RLS) in Prisma using Atlas. This guide covers defining RLS policies, configuring Atlas, and managing migrations.","sidebar":"orms"},"guides/orms/prisma/triggers":{"id":"guides/orms/prisma/triggers","title":"Manage Database Triggers with Prisma using Atlas","description":"Learn how to implement database triggers in Prisma using Atlas. This guide covers defining triggers, configuring Atlas, and managing migrations.","sidebar":"orms"},"guides/orms/prisma/vector-index":{"id":"guides/orms/prisma/vector-index","title":"Manage Vector Indexes with Prisma using Atlas","description":"Learn how to manage vector indexes in PostgreSQL with Prisma using Atlas. This guide covers installing the pgvector extension, setting up vector columns, creating vector indexes, and applying migrations.","sidebar":"orms"}
1,"guides/orms/prisma/visualize":{"id":"guides/orms/prisma/visualize","title":"Prisma Schema Visualizer: Generate ERDs from Your Schema","description":"Use Atlas as a Prisma schema visualizer to generate beautiful Entity-Relationship Diagrams (ERDs) from your schema. This guide shows you how to visualize your Prisma models and their relationships, making it easier to understand your database structure.","sidebar":"orms"},"guides/orms/sequelize":{"id":"guides/orms/sequelize","title":"Automatic Sequelize Migrations with Atlas","description":"A guide to automatic Sequelize migrations with Atlas. Go beyond sequelize-cli with advanced CI/CD, declarative workflows, and support for advanced database features.","sidebar":"orms"},"guides/orms/sequelize/composite-types":{"id":"guides/orms/sequelize/composite-types","title":"Using Composite Types in Sequelize","description":"Learn how to define and use PostgreSQL composite types in Sequelize models with Atlas. This guide covers setting up composite types, configuring Atlas, and automating schema migrations.","sidebar":"orms"},"guides/orms/sequelize/declarative-migrations-with-actions":{"id":"guides/orms/sequelize/declarative-migrations-with-actions","title":"Declarative Migrations for Sequelize using Atlas and GitHub Actions","description":"Learn how to set up a declarative migrations pipeline with Sequelize and Atlas on GitHub Actions. This guide covers prerequisites, Atlas project configuration, pushing schema to the Schema Registry, setting up GitHub Actions secrets, and creating workflows for planning and deploying changes.","sidebar":"orms"},"guides/orms/sequelize/domain-types":{"id":"guides/orms/sequelize/domain-types","title":"Using Domain Types in Sequelize","description":"Learn how to define and use PostgreSQL domain types in Sequelize models with Atlas. This guide covers setting up domain types, configuring migrations, and applying schema changes.","sidebar":"orms"},"guides/orms/sequelize/generate-models":{"id":"guides/orms/sequelize/generate-models","title":"Generate Sequelize Models (JavaScript Code) from a Database Schema","description":"Learn how to generate Sequelize model definitions from your existing database schema using Atlas templates and the `--format` flag.","sidebar":"orms"},"guides/orms/sequelize/getting-started":{"id":"guides/orms/sequelize/getting-started","title":"Automatic migration planning for Sequelize","description":"Learn how to use Atlas to automatically plan schema migrations for Sequelize projects. This guide covers installation, setup, and usage of the Atlas Sequelize Provider.","sidebar":"orms"},"guides/orms/sequelize/rls":{"id":"guides/orms/sequelize/rls","title":"Using Row-Level Security in Sequelize","description":"Learn how to implement PostgreSQL Row-Level Security (RLS) in Sequelize using Atlas. This guide covers defining RLS policies, configuring Atlas, and automating schema migrations.","sidebar":"orms"},"guides/orms/sequelize/script":{"id":"guides/orms/sequelize/script","title":"Managing Sequelize Schemas in Script Mode","description":"Learn how to manage Sequelize schemas in Script Mode using Atlas. This guide covers installation, extracting models, setting up Atlas, and generating migrations.","sidebar":"orms"},"guides/orms/sequelize/standalone":{"id":"guides/orms/sequelize/standalone","title":"Managing Sequelize Schemas in Standalone Mode","description":"Learn how to manage Sequelize schemas in standalone mode using Atlas. This guide covers installation, setup, and automating schema migrations.","sidebar":"orms"},"guides/orms/sequelize/triggers":{"id":"guides/orms/sequelize/triggers","title":"Using Database Triggers in Sequelize","description":"Learn how to use database triggers in Sequelize with Atlas. This guide covers setting up triggers for auditing changes in a PostgreSQL database, configuring Atlas for composite schemas, and applying migrations.","sidebar":"orms"},"guides/orms/sequelize/views":{"id":"guides/orms/sequelize/views","title":"Adding Database Views to Sequelize Schemas","description":"Learn how to integrate database views with Sequelize models using Atlas. This guide covers setting up composite schemas, generating schema migrations, and querying views in Sequelize.","sidebar":"orms"}
1,"guides/orms/sequelize/visualize":{"id":"guides/orms/sequelize/visualize","title":"Visualizing Sequelize Schemas","description":"Learn how to visualize Sequelize schemas using Atlas. This guide covers setting up Atlas, creating a Sequelize schema, and generating an Entity-Relationship Diagram (ERD) for your database.","sidebar":"orms"},"guides/orms/sqlalchemy":{"id":"guides/orms/sqlalchemy","title":"Automatic SQLAlchemy Migrations with Atlas","description":"A guide to automatic SQLAlchemy migrations with Atlas, a powerful alternative to Alembic. Get advanced CI/CD, declarative workflows, and support for database features like views, triggers, and RLS policies.","sidebar":"orms"},"guides/orms/sqlalchemy/extensions":{"id":"guides/orms/sqlalchemy/extensions","title":"Using Extensions with SQLAlchemy","description":"Learn how to manage PostgreSQL extensions, such as PostGIS, alongside your SQLAlchemy models using Atlas. Generate and apply migrations that include both schema changes and extension management with a single workflow.","sidebar":"orms"},"guides/orms/sqlalchemy/getting-started":{"id":"guides/orms/sqlalchemy/getting-started","title":"Automatic Schema Migration Planning For SQLAlchemy","description":"Learn how to use Atlas with SQLAlchemy to automatically plan schema migrations based on your data model. This guide covers installation, configuration, and automating schema migration using the SQLAlchemy Atlas Provider.","sidebar":"orms"},"guides/orms/sqlalchemy/rls":{"id":"guides/orms/sqlalchemy/rls","title":"Using Row-Level Security In SQLAlchemy","description":"Learn how to implement PostgreSQL Row-Level Security (RLS) in SQLAlchemy using Atlas. This guide covers defining RLS policies, configuring Atlas, and managing schema migrations.","sidebar":"orms"},"guides/orms/sqlalchemy/script":{"id":"guides/orms/sqlalchemy/script","title":"Automating Schema Migrations from SQLAlchemy Models (Python Script Mode)","description":"Learn how to use Atlas in Python Script Mode with SQLAlchemy to automate migration planning using a Python script.","sidebar":"orms"},"guides/orms/sqlalchemy/standalone":{"id":"guides/orms/sqlalchemy/standalone","title":"Automating Schema Migrations from SQLAlchemy Models (Standalone Mode)","description":"Learn how to use Atlas in Standalone Mode with SQLAlchemy to automate migration planning based on your schema model.","sidebar":"orms"},"guides/orms/sqlalchemy/triggers":{"id":"guides/orms/sqlalchemy/triggers","title":"Using Database Triggers in SQLAlchemy","description":"Learn how to use database triggers with SQLAlchemy by combining SQL-based trigger definitions and Python models into a unified schema using Atlas. Generate migrations that include both model and trigger logic across PostgreSQL, MySQL, SQLite, and SQL Server.","sidebar":"orms"},"guides/orms/typeorm":{"id":"guides/orms/typeorm","title":"Automatic TypeORM Migrations with Atlas","description":"A guide to automatic TypeORM migrations with Atlas. Go beyond TypeORM\'s native tools with advanced CI/CD, declarative workflows, and visual schema management.","sidebar":"orms"},"guides/orms/typeorm/generate-entities":{"id":"guides/orms/typeorm/generate-entities","title":"Generate TypeORM Entities (TypeScript Co
1de) from a Database Schema","description":"Learn how to generate TypeORM entity definitions from your existing database schema using Atlas templates and the `--format` flag.","sidebar":"orms"},"guides/postgres/descending-indexes":{"id":"guides/postgres/descending-indexes","title":"Descending Indexes in PostgreSQL","description":"Learn how to create and use descending indexes in PostgreSQL to optimize queries with the ORDER BY clause, and how to manage them in schema migrations using Atlas.","sidebar":"databases"},"guides/postgres/functional-indexes":{"id":"guides/postgres/functional-indexes","title":"Functional Indexes in PostgreSQL","description":"Learn how to use functional indexes in PostgreSQL to optimize query performance by indexing expression values. This guide covers syntax, examples, and how to manage them in schema migrations with Atlas.","sidebar":"databases"},"guides/postgres/included-columns":{"id":"guides/postgres/included-columns","title":"Indexes with Included Columns in PostgreSQL","description":"Learn how to create and manage indexes with included columns in PostgreSQL using Atlas. Understand the benefits of covering indexes and how to improve query performance.","sidebar":"databases"},"guides/postgres/index-operator-classes":{"id":"guides/postgres/index-operator-classes","title":"Index operator classes in PostgreSQL","description":"Learn how to use operator classes in PostgreSQL indexes to optimize query performance with specific operators and clauses. This guide covers the syntax, examples, and how to manage operator classes in schema migrations using Atlas.","sidebar":"databases"}
1,"guides/postgres/lineage-graph":{"id":"guides/postgres/lineage-graph","title":"Column-Level Data Lineage for PostgreSQL","description":"Trace column-level data lineage across tables and views of your PostgreSQL database. Visualize how columns are derived, inspect transformation expressions, and map upstream and downstream dependencies.","sidebar":"databases"},"guides/postgres/partial-indexes":{"id":"guides/postgres/partial-indexes","title":"Partial Indexes in PostgreSQL","description":"Learn how to use partial indexes in PostgreSQL to improve performance and reduce storage costs, and how to manage them in database schema migration easily with Atlas.","sidebar":"databases"},"guides/postgres/pg-110":{"id":"guides/postgres/pg-110","title":"Optimal data alignment in tables (PG110)","description":"Learn how to optimize disk space in PostgreSQL by arranging table columns in an efficient order to reduce padding space. Discover how Atlas CI for databases can help you determine the best order of columns for optimal data alignment.","sidebar":"databases"},"guides/postgres/pgtap-with-atlas":{"id":"guides/postgres/pgtap-with-atlas","title":"Testing PostgreSQL Schemas with pgTAP and Atlas","description":"Use pgTAP assertion functions in Atlas schema tests to verify table privileges and other PostgreSQL schema properties, with TAP-formatted output.","sidebar":"databases"},"guides/postgres/postgres-automatic-migrations":{"id":"guides/postgres/postgres-automatic-migrations","title":"Automatic PostgreSQL Schema Migrations with Atlas","description":"Learn how to manage PostgreSQL schemas with Atlas using both declarative and versioned workflows. This guide covers automatic Postgres schema migration, inspection, migration planning, and applying changes via CLI and CI/CD integrations.","sidebar":"databases"},"guides/postgres/rds-extensions":{"id":"guides/postgres/rds-extensions","title":"AWS RDS Extensions in the Atlas Dev Database","description":"Compile schemas that declare RDS-only extensions on the Atlas dev database: install mock aws_commons/aws_lambda/aws_s3 extensions on the dev image so CREATE EXTENSION works and Atlas manages them end-to-end.","sidebar":"databases"},"guides/postgres/schema-test-template-databases":{"id":"guides/postgres/schema-test-template-databases","title":"Faster Schema Tests with PostgreSQL Template Databases","description":"Speed up atlas schema test on PostgreSQL with template databases: build the schema once and run every test group on a fresh copy.","sidebar":"databases"},"guides/postgres/security-declarative":{"id":"guides/postgres/security-declarative","title":"PostgreSQL Database Security as Code (Declarative)","description":"Define PostgreSQL roles, permissions, and row-level security policies as code. Atlas plans and applies changes automatically - no more manual GRANT/REVOKE drift.","sidebar":"databases"},"guides/postgres/security-default-privileges":{"id":"guides/postgres/security-default-privileges","title":"Managing Default Privileges in PostgreSQL","description":"Learn how Atlas handles PostgreSQL\'s implicit default privileges in HCL and SQL schemas. Control automatic REVOKE behavior, customize dev-database defaults, and use ALTER DEFAULT PRIVILEGES.","sidebar":"databases"},"guides/postgres/security-versioned":{"id":"guides/postgres/security-versioned","title":"PostgreSQL Database Security as Code (Versioned)","description":"Manage PostgreSQL roles, permissions, and row-level security through versioned migrations. Every security change goes through code review and CI before reaching production.","sidebar":"databases"},"guides/postgres/seed-data":{"id":"guides/postgres/seed-data","title":"Managing Seed & Lookup Data in PostgreSQL","description":"Define lookup tables, reference tables, configuration data, and seed data as code. Atlas computes INSERT, UPDATE, and DELETE statements automatically.","sidebar":"databases"},"guides/postgres/serial-columns":{"id":"guides/postgres/serial-columns","title":"Serial Type Columns in PostgreSQL","description":"Learn how to create and manage serial columns in PostgreSQL, including changing column types and using Atlas for schema management.","sidebar":"databases"},"guides/postgres/supabase":{"id":"guides/postgres/supabase","title":"Managing Supabase Schemas with Atlas","description":"Manage a Supabase project with Atlas: pick a connection endpoint that works, build a dev database that matches the project, and keep tables, RLS policies, and Data API grants as code.","sidebar":"databases"},"guides/postgres/unlogged-tables":{"id":"guides/postgres/unlogged-tables","title":"Unlogged Tables in PostgreSQL","description":"Learn how to create and manage unlogged tables in PostgreSQL using Atlas. Understand the benefits of unlogged tables and how to model persistence modes declaratively.","sidebar":"databases"},"guides/redshift/getting-started-redshift":{"id":"guides/redshift/getting-started-redshift","title":"Automatic Redshift Schema Migrations with Atlas","description":"Amazon Redshift schema migrations with Atlas, declarative and versioned. Covers inspection, migration planning, and CI/CD integrations.","sidebar":"databases"}
1,"guides/redshift/lineage-graph":{"id":"guides/redshift/lineage-graph","title":"Column-Level Data Lineage for Redshift","description":"Trace column-level data lineage across tables and views of your Redshift database. Visualize how columns are derived, inspect transformation expressions, and map upstream and downstream dependencies.","sidebar":"databases"},"guides/redshift/security-declarative":{"id":"guides/redshift/security-declarative","title":"Amazon Redshift Database Security as Code (Declarative)","description":"Define Amazon Redshift roles, groups, users, and permissions as code. Atlas plans and applies the exact GRANT/REVOKE statements - no more manual grant drift on your cluster.","sidebar":"databases"},"guides/redshift/security-versioned":{"id":"guides/redshift/security-versioned","title":"Amazon Redshift Database Security as Code (Versioned)","description":"Manage Amazon Redshift roles, groups, users, and permissions through versioned migrations. Every GRANT and REVOKE goes through code review and CI before it reaches your cluster.","sidebar":"databases"},"guides/rls-policy":{"id":"guides/rls-policy","title":"Row-Level Security Policy: Prevent RLS Bypass and Enforce Tenant Isolation","description":"Manage PostgreSQL Row-Level Security as code. Prevent missing RLS, detect BYPASSRLS drift, test tenant isolation, and block unsafe policy changes in CI with Atlas.","sidebar":"guides"},"guides/schema-health-check":{"id":"guides/schema-health-check","title":"Validate Database Schema Integrity","description":"Detect invalid database objects, including broken functions, stale views, and orphaned references, before they fail at runtime with atlas schema validate.","sidebar":"guides"},"guides/schema-ownership":{"id":"guides/schema-ownership","title":"Schema Ownership Policy: Control Who Can Modify Database Objects","description":"Enforce which GitHub users and teams can modify specific database tables, schemas, and objects. Atlas ownership policy blocks unauthorized DDL changes in CI before they get merged.","sidebar":"guides"},"guides/security-as-code":{"id":"guides/security-as-code","title":"Shift Left Database Security: Roles, Permissions, and Policies as Code","description":"Shift database security left into the pull request. Manage roles, permissions, and row-level security policies as code with Atlas, validated in CI and applied to every environment through the same workflow as the rest of your schema.","sidebar":"guides"},"guides/security-scan":{"id":"guides/security-scan","title":"Security Scanning: Find Vulnerabilities in Running Databases","description":"atlas security scan connects to running databases and reports the security issues it finds, starting with installed extensions affected by a published CVE, resolved against the Atlas Security Graph.","sidebar":"guides"},"guides/seed-data-as-code":{"id":"guides/seed-data-as-code","title":"Seed Data as Code: Lookup Tables and Reference Data","description":"Manage lookup tables, reference data, configuration rows, and application settings as code. Atlas computes the INSERT, UPDATE, and DELETE statements needed to keep every environment in sync with the desired data state.","sidebar":"guides"},"guides/snowflake/automatic-migrations":{"id":"guides/snowflake/automatic-migrations","title":"Automatic Snowflake Schema Migrations with Atlas","description":"Learn how to manage Snowflake schemas with Atlas using both declarative and versioned workflows. This guide covers automatic Snowflake schema migration, inspection, migration planning, and applying changes via CLI and CI/CD integrations.","sidebar":"databases"},"guides/snowflake/lineage-graph":{"id":"guides/snowflake/lineage-graph","title":"Column-Level Data Lineage for Snowflake","description":"Trace column-level data lineage across tables and views of your Snowflake database. Visualize how columns are derived, inspect transformation expressions, and map upstream and downstream dependencies.","sidebar":"databases"},"guides/snowflake/security-declarative":{"id":"guides/snowflake/security-declarative","title":"Snowflake Database Security as Code (Declarative)","description":"Manage Snowflake access control as code with Atlas, account roles, database roles, the role-to-role and role-to-user grant graph, and object GRANTs, all from declarative HCL.","sidebar":"databases"},"guides/spanner/automatic-migrations":{"id":"guides/spanner/automatic-migrations","title":"Automatic Google Cloud Spanner Schema Migrations with Atlas","description":"Learn how to manage Google Cloud Spanner schemas with Atlas using both declarative and versioned workflows. This guide covers automatic Spanner schema migration, inspection, migration planning, and applying changes via CLI.","sidebar":"databases"},"guides/spanner/proto-columns":{"id":"guides/spanner/proto-columns","title":"Managing Google Spanner\'s protobuf Column Types with Atlas","description":"Learn how to manage Spanner GoogleSQL columns backed by protobuf message types with Atlas, and how to update PROTO_BUNDLE manually with gcloud.","sidebar":"databases"},"guides/sqlite/descending-indexes":{"id":"guides/sqlite/descending-indexes","title":"Descending Indexes in SQLite","description":"What descending indexes are in SQLite, when an ORDER BY DESC query benefits, and how to declare one in an Atlas HCL schema and apply it to the database.","sidebar":"databases"},"guides/sqlite/functional-indexes":{"id":"guides/sqlite/functional-indexes","title":"Functional Indexes in SQLite","description":"Learn how to create functional (expression) indexes in SQLite to speed up case-insensitive searches and queries on computed values, and how to manage them in schema migrations with Atlas.","sidebar":"databases"},"guides/sqlite/partial-indexes":{"id":"guides/sqlite/partial-indexes","title":"Partial Indexes in SQLite","description":"What partial indexes are in SQLite, when they beat a full index, and how to declare one in an Atlas HCL schema so Atlas plans the migration for you.","sidebar":"databases"},"guides/sqlite/turso":{"id":"guides/sqlite/turso","title":"Turso Schema Migrations with Atlas","description":"Manage Turso and libSQL database schemas with Atlas. Connect over libsql://, apply a declarative HCL schema to an edge database, and inspect the result.","sidebar":"databases"},"guides/terraform/named-databases":{"id":"guides/terraform/named-databases","title":"Provisioning schemas (named databases) with Terraform using Atlas","description":"Learn how to provision schemas (named databases) in existing database instances using Terraform and the Atlas Terraform Provider. This guide covers the setup, configuration, and execution of schema provisioning in your infrastru
1cture as code pipelines.","sidebar":"guides"},"guides/terraform/opentaco":{"id":"guides/terraform/opentaco","title":"Using Atlas Terraform Provider with OpenTaco (Digger)","description":"Learn how to integrate the Atlas Terraform Provider with OpenTaco (Digger) to automate database schema migrations in your pull request workflow.","sidebar":"guides"},"guides/testing/integration-docker-compose":{"id":"guides/testing/integration-docker-compose","title":"Integration tests with docker-compose","description":"Learn how to run integration tests with Docker Compose and Atlas. This guide covers setting up test databases, applying migrations, and ensuring your application works with an up-to-date schema using docker-compose.","sidebar":"guides"},"guides/testing/testing-data-migrations":{"id":"guides/testing/testing-data-migrations","title":"Testing Data Migrations","description":"Discover how to write tests for data migrations in Atlas, including seeding, backfilling, and validating data integrity as part of your schema workflow.","sidebar":"guides"},"guides/testing/testing-domains":{"id":"guides/testing/testing-domains","title":"Testing Postgres Domains","description":"Learn how to use Atlas\'s `schema test` command to write tests for PostgreSQL domain types, ensuring domain constraints and logic work correctly in your database schema.","sidebar":"guides"},"guides/testing/testing-functions":{"id":"guides/testing/testing-functions","title":"Testing Database Functions","description":"Learn how to use Atlas\'s `schema test` command to write tests for database functions, validating behavior and logic in your schema workflows.","sidebar":"guides"},"guides/testing/testing-github-actions":{"id":"guides/testing/testing-github-actions","title":"Integration tests with GitHub Actions","description":"Learn how to run integration tests with GitHub Actions and Atlas. This guide covers setting up test databases, applying migrations, and ensuring your application works with an up-to-date schema using GitHub Actions workflows.","sidebar":"guides"},"guides/testing/testing-procedures":{"id":"guides/testing/testing-procedures","title":"Testing Stored Procedures","description":"Learn how to use Atlas\'s `schema test` command to write tests for database stored procedures, ensuring procedure logic and data integrity in your schema workflows.","sidebar":"guides"},"guides/testing/testing-triggers":{"id":"guides/testing/testing-triggers","title":"Testing Database Triggers","description":"Learn how to use Atlas\'s `schema test` command to write tests for database triggers, validating trigger logic and automated event handling in your database schema.","sidebar":"guides"},"guides/testing/testing-views":{"id":"guides/testing/testing-views","title":"Testing Database Views","description":"Learn how to use Atlas\'s `schema test` command to write tests for database views, ensuring view definitions and data correctness in your schema workflows.","sidebar":"guides"},"guides/yugabyte/distributed-schema-declarative":{"id":"guides/yugabyte/distributed-schema-declarative","title":"Managing YugabyteDB Distributed Schemas (Declarative)","description":"Declare YugabyteDB colocation, tablet pre-splitting, and hash/range index sharding as code. Atlas plans the DDL and keeps the distribution layout in sync.","sidebar":"databases"},"guides/yugabyte/distributed-schema-versioned":{"id":"guides/yugabyte/distributed-schema-versioned","title":"Managing YugabyteDB Distributed Schemas (Versioned)","description":"Manage YugabyteDB colocation, tablet pre-splitting, and hash/range index sharding through versioned migrations. Every distribution decision is reviewed before it reaches production.","sidebar":"databases"},"guides/yugabyte/getting-started-yugabyte":{"id":"guides/yugabyte/getting-started-yugabyte","title":"Automatic YugabyteDB Schema Migrations with Atlas","description":"Learn how to manage YugabyteDB YSQL schemas with Atlas using both declarative and versioned workflows.","sidebar":"databases"},"hcldoc/agent":{"id":"hcldoc/agent","title":"Atlas Agent Configuration","description":"agent","sidebar":"documentation"},"hcldoc/clickhouse":{"id":"hcldoc/clickhouse","title":"ClickHouse Schema","description":"data","sidebar":"documentation"},"hcldoc/config":{"id":"hcldoc/config","title":"Atlas Configuration","description":"atlas","sidebar":"documentation"},"hcldoc/databricks":{"id":"hcldoc/databricks","title":"Databricks Schema","description":"function","sidebar":"documentation"},"hcldoc/functions":{"id":"hcldoc/functions","title":"Functions","description":"abs","sidebar":"documentation"},"hcldoc/home":{"id":"hcldoc/home","title":"Atlas HCL Documentation","description":"Driver Schemas","sidebar":"documentation"},"hcldoc/mariadb":{"id":"hcldoc/mariadb","title":"MariaDB Schema","description":"Comprehensive reference for defining MariaDB schemas using Atlas HCL. Learn about supported blocks, attributes, and examples for functions, procedures, tables, triggers, and views in MariaDB with Atlas.","sidebar":"documentation"},"hcldoc/mssql":{"id":"hcldoc/mssql","title":"SQL Server Schema","description":"Comprehensive reference for defining SQL Server (MSSQL) sc
1hemas using Atlas HCL. Learn about supported blocks, attributes, and examples for functions, procedures, tables, triggers, sequences, and views in SQL Server with Atlas.","sidebar":"documentation"},"hcldoc/mysql":{"id":"hcldoc/mysql","title":"MySQL Schema","description":"Comprehensive reference for defining MySQL schemas using Atlas HCL. Learn about supported blocks, attributes, and examples for functions, procedures, tables, triggers, and views in MySQL with Atlas.","sidebar":"documentation"},"hcldoc/oracle":{"id":"hcldoc/oracle","title":"Oracle Schema","description":"Comprehensive reference for defining Oracle schemas using Atlas HCL. Learn about supported blocks, attributes, and examples for schemas, tables, columns, constraints, and indexes in Oracle with Atlas.","sidebar":"documentation"},"hcldoc/plan":{"id":"hcldoc/plan","title":"Atlas Migration Plan","description":"plan","sidebar":"documentation"},"hcldoc/postgres":{"id":"hcldoc/postgres","title":"PostgreSQL Schema","description":"aggregate","sidebar":"documentation"},"hcldoc/redshift":{"id":"hcldoc/redshift","title":"Redshift Schema","description":"datashare","sidebar":"documentation"},"hcldoc/rule":{"id":"hcldoc/rule","title":"Atlas Linting Rule","description":"This page contains simple explanations of the predicate and rule blocks used for creating","sidebar":"documentation"},"hcldoc/scripts":{"id":"hcldoc/scripts","title":"Atlas Scripts","description":"mask","sidebar":"documentation"},"hcldoc/snowflake":{"id":"hcldoc/snowflake","title":"Snowflake Schema","description":"aggregationpolicy","sidebar":"documentation"},"hcldoc/spanner":{"id":"hcldoc/spanner","title":"Spanner Schema","description":"locality","sidebar":"documentation"},"hcldoc/sqlite":{"id":"hcldoc/sqlite","title":"SQLite Schema","description":"Comprehensive reference for defining SQLite schemas using Atlas HCL. Learn about supported blocks, attributes, and examples for schemas, tables, columns, triggers, indexes, and views in SQLite with Atlas.","sidebar":"documentation"},"hcldoc/testing":{"id":"hcldoc/testing","title":"Atlas Testing","description":"dataset csv {#dataset.csv}","sidebar":"documentation"},"home/docs":{"id":"home/docs","title":"Welcome to the Atlas Documentation","description":"The official Atlas documentation. Learn how to manage and migrate your database schemas with modern DevOps principles using declarative and versioned workflows.","sidebar":"documentation"},"inspect/export-schema":{"id":"inspect/export-schema","title":"Export Database Schema to Code","description":"Learn how to export an existing database schema to SQL or HCL code using the `atlas schema inspect` command with split and write functions.","sidebar":"documentation"},"inspect/inspect":{"id":"inspect/inspect","title":"Inspecting Existing Database Schemas","description":"Learn how to inspect existing database schemas and generate their HCL or SQL definitions using the `atlas schema inspect` command with various flags and options.","sidebar":"documentation"},"integrations/azure-devops":{"id":"integrations/azure-devops","title":"Automate Database CI/CD with Azure DevOps","description":"Learn how to use Azure DevOps to automate database schema migrations with Atlas. This guide covers setup, testing, linting, deploying, and integrating Atlas into your CI/CD workflows for SQL Server, MySQL, PostgreSQL, SQLite, and more.","sidebar":"documentation"},"integrations/bitbucket-pipes":{"id":"integrations/bitbucket-pipes","title":"Automate Database CI/CD with Bitbucket Pipes","description":"Learn how to integrate Atlas with Bitbucket Pipelines to automate database migrations, schema validation, and CI/CD workflows. Supports MySQL, Postgres, SQL Server, and more.","sidebar":"documentation"},"integrations/circleci-orbs":{"id":"integrations/circleci-orbs","title":"Automate Database CI/CD with CircleCI Orbs","description":"Learn how to use CircleCI Orbs to automate your database CI/CD workflows with Atlas. This guide covers migration planning, linting, applying, and monitoring workflows across MySQL, PostgreSQL, SQLite, SQL Server, and more.","sidebar":"documentation"},"integrations/github-actions":{"id":"integrations/github-actions","title":"Automate Database CI/CD with GitHub Actions","description":"Learn how to use GitHub Actions to automate database schema migrations with Atlas. This guide covers setup, testing, linting, deploying, and integrating Atlas into your CI/CD workflows for MySQL, PostgreSQL, SQLite, and more.","sidebar":"documentation"},"integrations/github-actions/ad-hoc-approval":{"id":"integrations/github-actions/ad-hoc-approval","title":"Ad-hoc Approvals for Declarative Schema Migrations Using GitHub Actions","description":"Learn how to implement ad-hoc approvals in GitHub Actions for Atlas schema migrations. This guide shows how to set up manual approval steps for schema changes.","sidebar":"documentation"},"integrations/github-actions/pre-approval":{"id":"integrations/github-actions/pre-approval","title":"Pre-approved Declarative Schema Migrations Using GitHub Actions","description":"Learn how to set up pre-approved schema migrations using GitHub Actions. This guide walks y
1ou through the process of planning, approving, and applying schema changes in a controlled manner.","sidebar":"documentation"},"integrations/gitlab-ci-components":{"id":"integrations/gitlab-ci-components","title":"Automate Database CI/CD with GitLab Pipelines","description":"Learn how to use Atlas CI/CD components in GitLab pipelines to manage database schema changes. This guide covers migration planning, linting, applying, and monitoring workflows across MySQL, PostgreSQL, SQLite, SQL Server, and more.","sidebar":"documentation"},"integrations/gitlab-ci-components/ad-hoc-approval":{"id":"integrations/gitlab-ci-components/ad-hoc-approval","title":"Ad-hoc Approvals for Declarative Schema Migrations Using GitLab CI","description":"Learn how to implement ad-hoc approvals in GitLab CI for Atlas schema migrations. This guide shows how to set up manual approval steps for schema changes.","sidebar":"documentation"},"integrations/gitlab-ci-components/pre-approval":{"id":"integrations/gitlab-ci-components/pre-approval","title":"Pre-approved Declarative Schema Migrations Using GitLab CI","description":"Learn how to set up pre-approved schema migrations using GitLab CI. This guide walks you through the process of planning, approving, and applying schema changes in a controlled manner.","sidebar":"documentation"},"integrations/go-sdk":{"id":"integrations/go-sdk","title":"Go SDK","description":"Drive the Atlas CLI from Go code with the Atlas Go SDK: run migrations, inspect schemas, and read structured results, as the official integrations do.","sidebar":"documentation"},"integrations/kubernetes/ad-hoc-approval":{"id":"integrations/kubernetes/ad-hoc-approval","title":"Ad-hoc Approvals for Declarative Schema Migrations Using the Atlas Kubernetes Operator","description":"Learn how to set up ad-hoc approvals for schema migrations using the Atlas Kubernetes Operator. This guide covers the steps to configure the Operator to pause migrations and wait for human approval before applying schema changes.","sidebar":"documentation"},"integrations/kubernetes/declarative":{"id":"integrations/kubernetes/declarative","title":"Declarative Schema Migrations with the Atlas Kubernetes Operator","description":"Learn how to manage database schema migrations declaratively using the Atlas Kubernetes Operator. This guide covers providing schemas, credentials, safety policies, and using the Atlas Schema Registry for robust Kubernetes database automation.","sidebar":"documentation"},"integrations/kubernetes/installation":{"id":"integrations/kubernetes/installation","title":"Operator Installation","description":"Installation of the Atlas Operator is typically done using Helm.","sidebar":"documentation"},"integrations/kubernetes/portal":{"id":"integrations/kubernetes/portal","title":"The Atlas Kubernetes Operator","description":"The Atlas Kubernetes Operator is a Kubernetes controller that uses","sidebar":"documentation"},"integrations/kubernetes/pre-approval":{"id":"integrations/kubernetes/pre-approval","title":"Pre-approved Declarative Schema Migrations Using the Atlas Kubernetes Operator","description":"Learn how to set up pre-approval flows for schema migrations using the Atlas Kubernetes Operator. This guide covers the steps to configure the Operator to plan schema changes, review them, and apply approved plans automatically.","sidebar":"documentation"},"integrations/kubernetes/project-configuration":{"id":"integrations/kubernetes/project-configuration","title":"Using Custom Project Configuration in Atlas Operator","description":"Learn how to use custom project configuration with Atlas Operator on Kubernetes. This guide covers enabling custom configs, provisioning databases, and managing composite schemas for advanced database workflows.","sidebar":"documentation"},"integrations/kubernetes/quickstart":{"id":"integrations/kubernetes/quickstart","title":"Atlas Kubernetes Operator Quickstart","description":"Learn how to quickly set up the Atlas Operator on a local Kubernetes cluster and apply a schema to a PostgreSQL database.","sidebar":"documentation"},"integrations/kubernetes/versioned":{"id":"integrations/kubernetes/versioned","title":"Versioned Schema Migrations with the Atlas Kubernetes Operator","description":"Learn how to use the Atlas Kubernetes Operator for versioned schema migrations. This guide covers providing migrations, credentials, safety mechanisms, and API reference for the AtlasMigration resource.","sidebar":"documentation"},"integrations/kubernetes/versioned-quickstart":{"id":"integrations/kubernetes/versioned-quickstart","title":"Atlas Kubernetes Operator Versioned Quickstart","description":"Run versioned migrations on Kubernetes with the Atlas Operator: generate a migration directory, push it to the Schema Registry, deploy it by tag, and protect rollbacks with approvals.","sidebar":"documentation"},"integrations/portal":{"id":"integrations/portal","title":"Atlas Integrations","description":"Integrate Atlas with your favorite tools and platforms. From CI/CD pipelines to infrastru
1cture-as-code, Atlas supports a wide range of integrations.","sidebar":"documentation"},"integrations/terraform/ad-hoc-approval":{"id":"integrations/terraform/ad-hoc-approval","title":"Ad-hoc Schema Change Approvals with Terraform and Atlas","description":"Learn how to configure ad-hoc approval flows for schema changes using the Atlas Terraform Provider. This guide covers setup, configuration, and best practices for requiring human approval before applying database migrations in Terraform workflows.","sidebar":"documentation"},"integrations/terraform/declarative":{"id":"integrations/terraform/declarative","title":"Declarative Migrations with Atlas Terraform Provider","description":"Use the Atlas Terraform Provider for declarative database schema migrations to automatically plan and apply schema changes with Terraform.","sidebar":"documentation"},"integrations/terraform/portal":{"id":"integrations/terraform/portal","title":"The Atlas Terraform Provider","description":"Manage database schema migrations in Terraform with the Atlas Terraform Provider, supporting declarative and versioned workflows, safety checks, and CI
1/CD integration.","sidebar":"documentation"},"integrations/terraform/project-configuration":{"id":"integrations/terraform/project-configuration","title":"Using Custom Project Configuration in Atlas Terraform Provider","description":"Learn how to use Atlas Project Configuration with the Atlas Terraform Provider.","sidebar":"documentation"},"integrations/terraform/quickstart":{"id":"integrations/terraform/quickstart","title":"Atlas Terraform Provider Quickstart","description":"Quickstart for the Atlas Terraform Provider. Learn how to manage database schema migrations with Terraform and Atlas.","sidebar":"documentation"},"integrations/terraform/versioned":{"id":"integrations/terraform/versioned","title":"Versioned Migrations with Atlas Terraform Provider","description":"Manage database schema migrations with Terraform using the Atlas Terraform Provider and versioned migration files.","sidebar":"documentation"},"lint/analyzers":{"id":"lint/analyzers","title":"Migration Analyzers","description":"Dive into migration analyzers in Atlas. Learn how to validate SQL & schema changes, catch breaking changes, review linear/non-linear migrations, and automate checks for safe deployment.","sidebar":"documentation"},"lint/rules":{"id":"lint/rules","title":"Custom Schema Policy","description":"Learn how to enforce database schema best practices and high quality deployments with custom linting rules in Atlas. Define standards for schema design, enforce organization requirements, and automate review workflows for every migration.","sidebar":"documentation"},"monitoring/bitbucket-quickstart":{"id":"monitoring/bitbucket-quickstart","title":"Monitor your database schema with Bitbucket Pipelines","description":"Learn how to monitor your database schema with Atlas using Bitbucket Pipelines. This quickstart guide covers token generation, pipeline setup, scheduled runs, and viewing schema changes in the Atlas Cloud.","sidebar":"guides"},"monitoring/discovery":{"id":"monitoring/discovery","title":"Automatic Database Discovery with Atlas Schema Monitoring","description":"Automatically discover database instances in your environment to monitor using an Atlas Agent.","sidebar":"documentation"},"monitoring/drift-detection":{"id":"monitoring/drift-detection","title":"Schema Drift Detection (Database Drift)","description":"Detect and prevent database schema drift with Atlas. Compare desired vs live schema, see SQL/HCL diffs and ERDs, and get instant Slack/webhook alerts.","sidebar":"documentation"},"monitoring/github-quickstart":{"id":"monitoring/github-quickstart","title":"Monitor Database Schema Changes with GitHub Actions","description":"Learn how to monitor your database schema changes automatically using GitHub Actions and Atlas Cloud. This quickstart guide covers setup, secrets, workflow configuration, and viewing schema changes in Atlas UI.","sidebar":"guides"},"monitoring/gitlab-quickstart":{"id":"monitoring/gitlab-quickstart","title":"Monitor Database Schema Changes with GitLab CI/CD","description":"Learn how to monitor your database schema changes automatically using GitLab CI/CD and Atlas Cloud. This quickstart guide covers setup, secrets, pipeline configuration, and viewing schema changes in Atlas UI.","sidebar":"guides"},"monitoring/helm":{"id":"monitoring/helm","title":"Deploying the Atlas Agent on Kubernetes with Helm","description":"Guide to deploying the Atlas Agent for database monitoring using Helm charts on Kubernetes.","sidebar":"guides"},"monitoring/home":{"id":"monitoring/home","title":"Database Drift Detection & Schema Monitoring","description":"Automatically detect and prevent database schema drift with Atlas. Gain real-time schema monitoring, auto-generated ER diagrams, and instant change alerts to maintain database integrity.","sidebar":"documentation"},"monitoring/overview":{"id":"monitoring/overview","title":"How Atlas Schema Monitoring Works: Architecture, Agents, and Key Features","description":"Discover how Atlas Schema Monitoring works. This guide explains the architecture, Atlas agent, schema changelog, documentation, drift detection, and key features for effective database schema monitoring in the cloud.","sidebar":"documentation"},"monitoring/quickstart":{"id":"monitoring/quickstart","title":"Agent Quickstart","description":"Quickstart for Atlas Schema Monitoring using the agent. Configure monitoring declaratively using HCL configuration files.","sidebar":"documentation"},"monitoring/security":{"id":"monitoring/security","title":"Security and Credentials","description":"Learn about the security, credentials management, and best practices for setting up Atlas Schema Monitoring with minimal privileges and max safety.","sidebar":"documentation"},"monitoring/terraform":{"id":"monitoring/terraform","title":"Deploying the Atlas Agent to AWS with Terraform","description":"Learn how to deploy the Atlas Agent to AWS using Terraform. This step-by-step guide covers prerequisites, AWS Secrets Manager, Fargate, IAM roles, security groups, and verifying your Atlas Agent deployment for database schema monitoring.","sidebar":"guides"},"monitoring/webhooks":{"id":"monitoring/webhooks","title":"Webhooks","description":"Learn how to use webhooks with Atlas Schema Monitoring for notifications into Slack and other HTTP endpoints about schema changes and drifts.","sidebar":"documentation"},"orms/index":{"id":"orms/index","title":"ORM and Framework Guides","description":"Learn how to integrate Atlas with popular ORMs and frameworks like SQLAlchemy, GORM, Prisma, and Hibernate to automate and manage schema migrations. Explore language-specific guides for Python, Go, Node.js, and more.","sidebar":"orms"}
1,"orms/why-atlas-for-orm":{"id":"orms/why-atlas-for-orm","title":"Why use Atlas with your ORM?","description":"Learn how Atlas can enhance your ORM workflow by providing advanced schema management, support for modern CI/CD practices, and automated migration planning across multiple frameworks and languages.","sidebar":"orms"},"scripts/exec":{"id":"scripts/exec","title":"Transactional Mutations: script exec","description":"Run a set of writes as one transactional unit with script exec: SQL guards with condition, assert, and check, automatic rollback, and reads that feed writes.","sidebar":"documentation"},"scripts/getting-started":{"id":"scripts/getting-started","title":"Data Scripts: Run Data Operations as Code","description":"Data Scripts are a declarative language for running data operations against a database: transactional mutations, reports, and batched loops, run with atlas script exec, query, and loop, with transactions, assertions, and output masking built in.","sidebar":"documentation"},"scripts/kubernetes":{"id":"scripts/kubernetes","title":"Running Data Scripts on Kubernetes","description":"Run Atlas Data Scripts inside a Kubernetes cluster with the arigaio/atlas image: push the script to the Atlas Registry, hold the credentials in a Secret, and run it on a schedule as a CronJob or on demand as a Job.","sidebar":"documentation"},"scripts/loop":{"id":"scripts/loop","title":"Batched Loops: script loop and loop policy","description":"Run a do body repeatedly with script loop, once per keyset or range batch, each iteration in its own transaction. Control transactions, pacing, staged ramp-up, and external HTTP calls with the loop policy block.","sidebar":"documentation"},"scripts/masking":{"id":"scripts/masking","title":"Masking Sensitive Output","description":"Redact result columns before they leave Atlas with mask blocks: REDACT, PARTIAL, HASH, and REPLACE methods, glob column matching, scopes, precedence, and reusable named masks.","sidebar":"documentation"},"scripts/query":{"id":"scripts/query","title":"Queries and Reports: script query","description":"Run one or more SELECTs against a single database with script query and serialize the results as CSV or a table, bind parameters, feed one query\'s rows into the next, and redact sensitive columns before they leave Atlas.","sidebar":"documentation"},"scripts/testing":{"id":"scripts/testing","title":"Testing Data Scripts: the script command","description":"Test Data Scripts with atlas schema test, atlas migrate test, and atlas script test: the script command loads a script file, runs the scripts matching run, asserts what a script prints with output or match, expects failures with error, and runs the scripts under a reduced role or login with the as block.","sidebar":"documentation"},"support":{"id":"support","title":"Getting Support","description":"How to get help with Atlas: community support on Discord and GitHub issues, and SLA-backed Enterprise support for Atlas","sidebar":"documentation"},"testing/migrate":{"id":"testing/migrate","title":"Testing Migrations","description":"Learn how to write tests for your migrations with Atlas using `atlas migrate test` to ensure migrations are correct and safe, including data migrations.","sidebar":"documentation"},"testing/plan":{"id":"testing/plan","title":"Testing Migration Plans","description":"Learn how to test declarative schema migration plans in Atlas using `atlas schema plan test` to validate planned changes before applying.","sidebar":"documentation"},"testing/schema":{"id":"testing/schema","title":"Schema Testing - Test Schema with Atlas","description":"Learn how to test schema with Atlas. Write schema tests using .test.hcl files, run atlas schema test command, and validate database behavior with SQL assertions.","sidebar":"documentation"},"thank-you-demo":{"id":"thank-you-demo","title":"Thanks for your interest in Atlas!","description":"Thanks for booking a demo with us, see you soon!"},"trust":{"id":"trust","title":"Trust Center","description":"Ariga\'s security and compliance posture for Atlas: SOC 2 Type II, the control limiting processing to schema metadata, legal documents, and availability.","sidebar":"documentation"},"versioned/apply":{"id":"versioned/apply","title":"Applying Schema Migrations","description":"Learn how to use the `atlas migrate apply` command to apply versioned schema migrations to your database. This page covers the full workflow for managing, validating, and deploying database schema migrations with Atlas.","sidebar":"documentation"},"versioned/apply-pre-post-hooks":{"id":"versioned/apply-pre-post-hooks","title":"Pre & Post Execution Hooks","description":"Learn how to run custom logic before and after executing migrations with using Atlas pre and post execution hooks. Includes seeding reference data and running data backfills.","sidebar":"documentation"}
1,"versioned/checkpoint":{"id":"versioned/checkpoint","title":"Migration Directory Checkpoints","description":"Learn how to use migration directory checkpoints in Atlas to capture database schema snapshots, skip previously applied migrations, and speed up migration workflows.","sidebar":"documentation"},"versioned/checks":{"id":"versioned/checks","title":"Safeguarding Migrations with Pre-Execution Checks","description":"Learn how to define and run pre-migration checks in Atlas to validate schema conditions before applying migrations, ensuring safe database changes.","sidebar":"documentation"},"versioned/diff":{"id":"versioned/diff","title":"Automatic Schema Migration Planning","description":"Learn how to automatically generate schema migrations for any database schema change using the `atlas migrate diff` command. This guide covers automatic migration planning for database schema migrations with Atlas, best practices, and examples for SQL, HCL, and ORM sources.","sidebar":"documentation"},"versioned/down":{"id":"versioned/down","title":"Down Migrations","description":"Learn how to revert applied schema migrations using the `atlas migrate down` command, computing rollback plans dynamically based on the current database state.","sidebar":"documentation"},"versioned/drift-detection":{"id":"versioned/drift-detection","title":"Database Schema Drift Detection for Versioned Migrations","description":"Detect schema drift in versioned migrations. Block migrate apply when the target database differs from the expected state, or check it on a schedule with atlas migrate drift.","sidebar":"documentation"},"versioned/import":{"id":"versioned/import","title":"Import Existing Databases or Migrations","description":"Learn how to import existing databases into Atlas versioned migrations by baselining or importing migration directories from other tools.","sidebar":"documentation"},"versioned/intro":{"id":"versioned/intro","title":"Introduction to Versioned Migrations","description":"Learn how Atlas automatically generates SQL migration scripts from your desired schema. Plan, lint, and safely apply database schema changes.","sidebar":"documentation"},"versioned/lint":{"id":"versioned/lint","title":"Verifying Migration Safety","description":"Run atlas migrate lint to catch destructive changes, breaking changes, and table locks in a migration directory, locally and on every pull request in CI.","sidebar":"documentation"},"versioned/new":{"id":"versioned/new","title":"Manual Migrations","description":"Learn how to create manual migration files with `atlas migrate new` to handle custom DDL, seed data, or integrate unsupported schema changes.","sidebar":"documentation"},"versioned/setup-cicd":{"id":"versioned/setup-cicd","title":"Setup CI/CD for Versioned Migrations","description":"Learn how to set up continuous integration and continuous deployment for your database migrations with Atlas. This guide covers CI (linting, diff generation, testing, registry push) and CD (per-environment deployment) workflows.","sidebar":"documentation"},"versioned/troubleshoot":{"id":"versioned/troubleshoot","title":"Migration Troubleshooting","description":"Learn how to troubleshoot migration failures with Atlas, including inspecting migration status, setting migration versions, understanding the atlas_schema_revisions table, and resolving partial or failed schema changes.","sidebar":"documentation"}}}}')}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.