Atlas is a database schema management tool that supports both declarative and versioned workflows. It provides a CLI interface for inspecting, diffing, and applying schema changes across multiple databases (MySQL, PostgreSQL, SQLite, SQL Server, CockroachDB, etc.). The architecture is modular, with core packages for database drivers (sqlclient), migration planning/execution (migrate), HCL-based schema definition (schemahcl), and safety checking (sqlcheck). Key entry points are in cmd/atlas/internal/cmdapi for schema, migrate, and version commands. The system uses Ent ORM for migration state tracking and includes advanced features like drift detection, cloud integration, and a scripting engine for conditional migrations.
Queryx is a schema-first, type-safe ORM for Go and TypeScript. It provides a CLI tool that parses HCL schema files, manages database migrations using Atlas, and generates type-safe ORM client code for both Go and TypeScript. The codebase is well-structured with clear separation of concerns: schema parsing (schema/), database adapters (adapter/), code generation (generator/), and string inflection utilities (inflect/). It supports PostgreSQL, MySQL, and SQLite. The project includes comprehensive integration tests and CI/CD pipelines. While still in beta (v0), it demonstrates solid engineering practices with template-based code generation, fluent query builders, and support for associations, transactions, and custom primary keys. The generated code is type-safe and includes its own type wrappers for nullable fields and JSON serialization.