6 dépôts
Algorithmic calculation of the minimal set of changes required to transform one database schema state into another.
Distinct from State Diffing: None of the candidates address SQL schema state transitions; they focus on UI state or terminal buffers.
Explore 6 awesome GitHub repositories matching data & databases · Schema State Diffing. Refine with filters or upvote what's useful.
Atlas is a SQL database schema management tool and database infrastructure as code framework. It provides a declarative database migration engine that computes the difference between a desired schema state and the current database state to automatically generate the necessary SQL for transitions. The project distinguishes itself through a comprehensive suite of analysis and visualization tools, including a database schema linter that detects destructive changes and data loss risks. It also features a SQL schema visualization tool capable of generating entity-relationship diagrams from extract
Computes the difference between a desired schema state and the current database state to generate migration plans.
jOOQ is a type-safe SQL query builder for Java that generates code from live database schemas, enabling compile-time validation of SQL syntax and data types. Its core identity is built around a fluent DSL that mirrors SQL structure, a code generator that maps tables, views, and routines to Java objects, and a multi-dialect engine that translates the same DSL into vendor-specific SQL for over 30 databases. The project also includes a SQL parser and transformer for refactoring or dialect conversion, reactive stream integration for non-blocking query execution, and a JDBC proxy diagnostics tool f
Compares two database schema versions and generates the DDL statements needed to migrate between them.
tbls est un utilitaire en ligne de commande basé sur Go utilisé pour documenter, analyser et linter les schémas de bases de données relationnelles. Il fonctionne comme un outil de documentation qui génère des rapports structurés et des diagrammes entité-relation aux formats Markdown, JSON ou Excel, ainsi qu'un outil de diff de schéma pour identifier les écarts entre une base de données en direct et sa documentation. Le projet permet l'augmentation de schéma et la définition de relations virtuelles via des fichiers de configuration externes, permettant des remplacements de métadonnées et des connexions de tables sans nécessiter de migrations de base de données ou de contraintes natives. Il prend en outre en charge l'organisation des tables en points de vue basés sur le domaine pour créer des perspectives organisées du schéma global. Les capacités supplémentaires incluent la capacité de valider les structures de base de données par rapport à des règles prédéfinies via un linter SQL et la mesure de la couverture documentaire pour déterminer le pourcentage de tables et de colonnes décrites. Le système utilise une interface de pilote basée sur JSON pour intégrer des exécutables externes afin de prendre en charge divers types de bases de données et emploie des modèles personnalisables pour la génération de documents.
Compares the live database state against stored documentation to identify structural discrepancies.
Alembic is a database schema versioning system and migration tool for SQLAlchemy. It manages incremental updates to database structures using versioned scripts that support both upgrading and downgrading to keep the database and code in sync. The system utilizes a directed acyclic graph for migration management, which allows for non-linear versioning, including branching and merging across multiple root versions. It includes an automated schema diffing tool that compares live database schemas against metadata objects to programmatically generate migration instructions. The tool provides capa
Provides algorithmic calculation of changes needed to transform a live database schema to match a model definition.
apollo-ios is a GraphQL client library for iOS and Apple platforms that enables type-safe network communication. It transforms GraphQL operations into generated Swift models, ensuring that network responses are validated at compile time to eliminate manual mapping. The library features a normalized cache manager that stores entities in a flat structure to maintain data consistency across different application views. It also optimizes network performance using hash-based persisted queries to reduce payload sizes and supports real-time data streaming via WebSockets or HTTP subscriptions. The p
Calculates changes between schema versions using a format-aware diffing engine.
cr-sqlite is a multi-master database replication system that uses conflict-free replicated data types to ensure eventual consistency across distributed nodes. It provides the core capabilities for offline-first data synchronization, allowing multiple database instances to merge concurrent updates and reach a consistent state. The project distinguishes itself through a combination of CRDT-based data replication and a WASM-based database engine, enabling full SQL execution and state persistence within web browsers. It supports peer-to-peer replication and cross-tab synchronization, utilizing ca
Automates database structure updates by calculating the minimal set of changes required to transform schemas.