{"id":45904987,"url":"https://github.com/autoschematic-sh/autoschematic","last_synced_at":"2026-03-13T05:07:01.327Z","repository":{"id":293437269,"uuid":"983981635","full_name":"autoschematic-sh/autoschematic","owner":"autoschematic-sh","description":"A tool for managing infrastructure and policy as code.","archived":false,"fork":false,"pushed_at":"2026-03-12T08:03:31.000Z","size":1085,"stargazers_count":62,"open_issues_count":18,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-03-12T12:55:28.901Z","etag":null,"topics":["devops","infrastructure-as-code"],"latest_commit_sha":null,"homepage":"https://autoschematic.sh","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/autoschematic-sh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-05-15T08:01:34.000Z","updated_at":"2026-03-12T08:03:37.000Z","dependencies_parsed_at":null,"dependency_job_id":"73d8a3df-b2c3-48b8-b1e5-c21cd39925c7","html_url":"https://github.com/autoschematic-sh/autoschematic","commit_stats":null,"previous_names":["autoschematic-sh/autoschematic"],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/autoschematic-sh/autoschematic","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/autoschematic-sh%2Fautoschematic","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/autoschematic-sh%2Fautoschematic/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/autoschematic-sh%2Fautoschematic/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/autoschematic-sh%2Fautoschematic/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/autoschematic-sh","download_url":"https://codeload.github.com/autoschematic-sh/autoschematic/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/autoschematic-sh%2Fautoschematic/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30459449,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-13T03:55:51.346Z","status":"ssl_error","status_checked_at":"2026-03-13T03:55:33.055Z","response_time":60,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["devops","infrastructure-as-code"],"created_at":"2026-02-28T02:00:16.427Z","updated_at":"2026-03-13T05:07:01.290Z","avatar_url":"https://github.com/autoschematic-sh.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Autoschematic\n\n[![MSRV](https://img.shields.io/badge/MSRV-1.90.0-orange)](https://github.com/autoschematic-sh/autoschematic)\n[![Crates.io](https://img.shields.io/crates/v/autoschematic-core.svg)](https://crates.io/crates/autoschematic-core)\n[![Docs](https://docs.rs/autoschematic-core/badge.svg)](https://docs.rs/autoschematic-core)\n\n[![CI-MacOS](https://github.com/autoschematic-sh/autoschematic/actions/workflows/verify-macos.yml/badge.svg)](https://github.com/autoschematic-sh/autoschematic/actions/workflows/verify-macos.yml)\n\n[![CI-Linux](https://github.com/autoschematic-sh/autoschematic/actions/workflows/verify-ubuntu.yml/badge.svg)](https://github.com/autoschematic-sh/autoschematic/actions/workflows/verify-ubuntu.yml)\n\n\nAutoschematic is a new framework for Infrastructure-as-Code, written in Rust.\n\nAutoschematic was developed to address the difficulties we experienced while\nusing the current leading tools, such as Terraform and Pulumi, at small and medium sized companies.\n\nThe most urgent among these was _state drift._ State drift was so painful for some teams that it made infrastructure-as-code unworkable; \nstate drift even caused serious incidents!\n\nAutoschematic is the result of a research project that targeted users like these: users for whom infrastructure was a cost center, \nwho had little time or budget to replatform, and who found themselves unable to rely on their existing infrastructure-as-code as a source of truth.\n\nThe results have been extremely promising. With a push-pull state model, Autoschematic can automatically resolve state drift in either direction,\nand automatically import your existing manually-created infrastructure into an IaC codebase. (In other words, something like [Terraformer](https://github.com/GoogleCloudPlatform/terraformer) is built-in by design!)\n\nAutoschematic is still in beta; it shouldn't yet be relied on as \"Rust's answer to Terraform\". It only features a limited number of \"connectors\" (our analogue to Terraform's \"providers\"). However, there are a few cool design aspects that distinguish it strongly from current frameworks. \n\n### A Push-Pull State Model\nTo mitigate state-drift, Autoschematic is designed around a state model that's **bidirectional**. In other words, you can push _and_ pull, just like git.\nThe [vscode extension](https://marketplace.visualstudio.com/items?itemName=Autoschematic.autoschematic) is designed to make this more intuitive, as well as providing language server support. This model is also what allows you to scan and import existing resources into IaC automatically.\n\n### Connectors That Speak Their Own Language\nYou could say Terraform is built around HCL; what language is Autoschematic built around?\nThe answer is actually that Autoschematic leaves Connectors to handle their own language implementation. This might seem strange, but in practice, it means that the Snowflake connector can speak regular Snowflake DDL SQL, the Kubernetes connector can speak coherent YAML manifests, and the remotefs connector can simply sync raw files as they appear in git, all as native resources of the connector implementations, with language server and state resolution support.\n\n### A Deeper Integration With Github\nAutoschematic is actually two implementations, with a shared library (`autoschematic-core`) for common code.\n`autoschematic` is the command line program, for local use, and `autoschematic-server` forms a rich Github integration. \nUnlike `atlantis`, Autoschematic works with deleted files in the PR, supports richer formatting and RBAC functionality, and can horizontally scale.\n\n(Note: the docs on hosting this server implementation are not yet complete. )\n\n### So, What Connectors Are There?\nCheck the [Connector Catalogue](https://autoschematic.sh/catalogue) for the full list.\nFeel free to raise an issue here if you'd like to request a connector implementation for a particular service.\n\n# Installation\n\nNote: you will need the protobuf compiler in order to build with `cargo install` as below.\n\nOn Mac:\n`brew install protobuf`\n\nOn Debian/Ubuntu:\n`apt-get install protobuf-compiler`\n\nOn Red Hat/Fedora:\n`dnf install protobuf-compiler`\n\n```shell \ncargo install autoschematic\n```\n\nWindows is not natively supported yet; you can use WSL as a workaround.\n\nNow you're about ready to try out some examples!\n\n[https://autoschematic.sh/guide/getting-started/](https://autoschematic.sh/guide/getting-started/)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fautoschematic-sh%2Fautoschematic","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fautoschematic-sh%2Fautoschematic","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fautoschematic-sh%2Fautoschematic/lists"}