@famgia/omnify-atlas
v2.0.18
Published
Atlas CLI integration for omnify-schema
Readme
@famgia/omnify-atlas
Atlas CLI integration for Omnify schemas. Generate HCL schemas and compute database diffs.
Installation
npm install @famgia/omnify-atlasPrerequisites
Atlas CLI must be installed:
# macOS
brew install ariga/tap/atlas
# Linux
curl -sSf https://atlasgo.sh | shUsage
import {
generateHCL,
runAtlasDiff,
AtlasRunner,
HCLGenerator
} from '@famgia/omnify-atlas';
// Generate Atlas HCL from schemas
const hcl = generateHCL(schemas, {
dialect: 'mysql',
});
// Run Atlas diff
const diff = await runAtlasDiff({
from: 'file://schema.hcl',
to: 'mysql://user:pass@localhost:3306/db',
});Features
- HCL schema generation from Omnify schemas
- Atlas CLI wrapper for diffing
- Support for MySQL, PostgreSQL, SQLite
- Lock file management
- Migration preview
Generated HCL
table "users" {
schema = schema.main
column "id" {
type = bigint
auto_increment = true
}
column "email" {
type = varchar(255)
}
primary_key {
columns = [column.id]
}
index "users_email_unique" {
columns = [column.email]
unique = true
}
}Related Packages
- @famgia/omnify-core - Core engine
- @famgia/omnify-cli - CLI tool
- @famgia/omnify-laravel - Laravel generator
License
MIT
