29 dépôts
Tools that analyze data models to produce formal schema definitions for validation.
Distinct from Configuration Schema Generators: Existing candidates focus on configuration schemas or LLM-driven generation rather than general model-to-schema analysis.
Explore 29 awesome GitHub repositories matching data & databases · Schema Generators. Refine with filters or upvote what's useful.
Blitz est une extension de framework de développement fullstack pour Next.js et une interface en ligne de commande utilisée pour amorcer les structures de projet et orchestrer les serveurs de développement locaux. Il intègre la logique frontend et backend dans un flux de travail unique pour faciliter la création d'applications web complètes. Le framework utilise une intégration backend zéro-API et une couche d'accès direct à la base de données, permettant aux composants frontend de se connecter aux fonctions serverless et aux bases de données sans définitions d'API manuelles. Il dispose d'un générateur de types piloté par schéma qui crée automatiquement des définitions TypeScript en analysant les schémas de base de données backend pour synchroniser les modèles de données entre le client et le serveur. Le projet fournit des outils pour le prototypage rapide d'applications et un flux de travail fullstack TypeScript. Ses capacités couvrent l'orchestration de serveurs multi-processus et la génération de modèles de projet structurés pour intégrer les modèles de développement frontend et backend.
Automatically generates TypeScript definitions based on backend database schemas.
This project is a markdown knowledge base used to maintain a curated collection of concise technical notes and write-ups across various programming languages and tools. It serves as a searchable personal reference library for documenting technical discoveries and software development patterns. The system implements a learning in public workflow, transforming markdown-based content storage into a static site. It utilizes directory-based routing to map folder structures to URL paths and employs schema-driven type generation to ensure data consistency across the knowledge base. The codebase cov
Generates TypeScript definitions from content schemas to ensure data consistency across the knowledge base.
EmDash is an open-source content management system built on Astro that combines a visual admin panel with a plugin-driven architecture and server-side rendering. It provides a complete content management system with structured content modeling, a rich text editor using Portable Text format, and a TypeScript API for type-safe content queries. The system supports authentication through passkeys, OAuth 2.1, and external providers, with role-based access control and fine-grained permission scopes. What distinguishes EmDash is its plugin development framework, which supports both native plugins ru
Produces TypeScript types from the content schema for full type safety and autocomplete.
Doctrine ORM is a PHP object-relational mapper that connects application objects to relational database tables. It uses the data mapper and identity map patterns to decouple the in-memory object model from the database schema, allowing developers to manage data persistence without writing manual SQL. The project features a dedicated object-oriented query language and programmatic builder for retrieving data based on entities rather than tables. It implements a unit-of-work system to track object changes during a request and synchronize them via atomic transactions. The capability surface inc
Analyzes entity models and metadata to generate the corresponding relational database schema.
Jackson is a Java data binding framework and multi-format data serializer used to translate data structures into native language objects. It functions as a JSON data binding library and a streaming parser that reads and writes data as discrete tokens to process large datasets with minimal memory. The project distinguishes itself through a bytecode serialization accelerator that replaces standard reflection with generated bytecode to increase data binding speed. It employs a module-based extensibility model to support a wide range of formats beyond JSON, including XML, YAML, CSV, TOML, and bin
Produces external schema definitions by analyzing internal class structures and their associated markers.
atproto is a decentralized social networking protocol implementation and a schema-driven API framework. It provides the networking and data standards required to build interoperable social networks where users control their own identity and data through a personal data server specification. The project distinguishes itself through a DID-based identity system for managing cryptographic keys and verifiable profiles, alongside a lexicon-based protocol definition that uses versioned schemas to ensure consistency across network services. It utilizes Merkle Search Trees for verifiable data storage,
Produces type-safe validation and builder utilities from JSON schema files for TypeScript environments.
gRPC-Web is a JavaScript client library that enables browser applications to call gRPC services through an HTTP proxy, using Protocol Buffers for serialization. It provides a browser-based gRPC client that supports unary, server-streaming, and bidirectional streaming RPCs, along with a code generator that produces JavaScript and TypeScript client stubs from .proto service definitions. The library includes an interceptor framework for attaching cross-cutting logic like authentication and retries to client calls, and supports setting Unix timestamp deadlines on RPCs for server-side timeout enfo
Generate type definitions or full TypeScript output alongside the stub so editors provide type checking.
A polyglot web converter.
Translates Flow type annotations into equivalent TypeScript type definitions.
Rushstack est un ensemble d'outils complet pour gérer les monorepos TypeScript à grande échelle, fournissant un framework pour l'automatisation des pipelines de build, la coordination des dépendances et l'analyse statique. Il fonctionne comme un orchestrateur de build incrémental et un système de gestion conçu pour maintenir la cohérence et la performance à travers de multiples packages dans un espace de travail partagé. Le système se distingue par un modèle d'exécution basé sur des graphes acycliques dirigés et un incrémentalisme basé sur le hash de contenu, qui assure que seuls les projets affectés sont reconstruits. Il optimise davantage les workflows de développement via la mise en cache distante des artefacts de build avec des intégrations pour S3, Azure et HTTP, et utilise la gestion d'espace de travail basée sur des liens symboliques pour une visibilité immédiate des changements locaux. L'ensemble d'outils couvre un large éventail de capacités incluant des workflows de release automatisés, l'analyse de contrat API et l'application de la qualité de code en entreprise via des profils de linting standardisés. Il fournit également un support étendu pour le bundling d'actifs, la transpilation TypeScript et la génération de définitions de type à partir de schémas JSON et d'actifs statiques. Des domaines utilitaires supplémentaires incluent la gestion de la localisation, la génération d'avis de licence et l'orchestration d'interfaces de ligne de commande avec une sortie de processus synchronisée.
Generates TypeScript declaration files from JSON schemas to provide type safety for assets and configurations.
Hibernate ORM est un mapper objet-relationnel (ORM) Java et une implémentation complète de l'API Jakarta Persistence. Il sert de couche d'abstraction de base de données SQL qui traduit les modèles d'objets Java en schémas de base de données relationnelle pour gérer la persistance et le cycle de vie des données. Le framework se distingue par un framework d'isolation de données multi-tenant pour séparer les données des clients au sein d'une même instance de base de données. Il dispose également d'un générateur de schéma de base de données qui produit et met à jour automatiquement les structures relationnelles basées sur les mappings d'entités. Le système couvre des domaines étendus comme la gestion des transactions, le contrôle de verrouillage de concurrence et le suivi des données temporelles pour l'audit. Il fournit des outils d'optimisation de récupération de données via des stratégies d'entity-graph et prend en charge des types de données avancés comme les données vectorielles et les caractères nationalisés. Le projet inclut une suite complète d'utilitaires de test pour la couche de persistance, incluant le filtrage par dialecte de base de données et les tests de conformité aux spécifications.
Analyzes entity metadata to produce DDL scripts that automatically align the database structure with the domain model.
Orval is an OpenAPI-to-TypeScript code generator that produces fully typed API clients, data-fetching hooks, mock data, validation schemas, and server handlers from OpenAPI or Swagger specifications. It reads any YAML or JSON API specification and generates TypeScript interfaces, HTTP request functions, and framework-specific integration code that ensures compile-time correctness for all API calls. The project distinguishes itself by generating production-ready data-fetching hooks for React Query, Vue Query, Svelte Query, Solid Query, Angular, and SWR, complete with automatic cache invalidati
Generates TypeScript interfaces and types from OpenAPI schemas for type-safe API interactions.
graphql-request is a lightweight, type-safe GraphQL client library for JavaScript that runs across browsers, Node.js, and other JavaScript environments. It provides a minimal HTTP client for sending queries and mutations, with a promise-based execution model that uses the native fetch API for cross-runtime compatibility without additional dependencies. The client supports reusable selection set composition at runtime, allowing fragments to be shared across multiple requests to reduce duplication. It includes a plugin-based extension system for adding custom middleware, tracing, or file upload
Generates fully typed TypeScript client methods from GraphQL schemas for compile-time validation.
Clean and simple starter repo using the T3 Stack along with Expo React Native
Generates Drizzle-compatible database schemas and migrations from Better Auth configuration.
GraphQL.NET est un framework côté serveur pour construire et exécuter des API GraphQL au sein d'applications C#. Il fournit une boîte à outils complète pour la construction de schémas, un moteur fédéré pour les graphes de données distribués et un gestionnaire d'abonnements pour gérer les flux de données en temps réel. Le projet se distingue par un constructeur de schéma flexible qui prend en charge à la fois les définitions programmatiques code-first et les approches déclaratives schema-first utilisant le langage de définition de schéma standard. Il inclut un moteur de fédération dédié pour diviser les graphes de données en sous-graphes et les composer en une passerelle unifiée, ainsi qu'une implémentation de chargeur de données (data loader) spécifiquement conçue pour résoudre le problème de requête N+1 via le traitement par lots et la mise en cache. Le framework couvre un large éventail de capacités opérationnelles, notamment l'intégration de l'injection de dépendances pour la gestion du cycle de vie des services, des pipelines de middleware pour l'interception de la résolution de champs, et un pipeline d'exécution optimisé avec des types de valeur pour réduire les allocations mémoire. Il fournit également des outils pour l'analyse de la complexité des requêtes, la mise en cache des documents et le contrôle d'accès basé sur les rôles pour sécuriser les endpoints de l'API. La prise en charge de la compilation de schéma en avance de phase (ahead-of-time) permet au framework de s'exécuter dans des environnements qui interdisent la génération de code dynamique.
Maps .NET classes to GraphQL types by interpreting attributes such as Name and OutputType on properties.
Tortoise ORM is an asynchronous object-relational mapper for Python that mirrors Django's model and queryset API while running on asyncio. It defines database tables as Python classes with typed fields and supports foreign key, many-to-many, and one-to-one relations, providing a chainable query API for filtering, annotating, grouping, and prefetching related objects without blocking the event loop. The ORM includes a built-in migration engine that detects model changes, generates migration files, and applies or reverts schema changes through a command-line tool. It connects to PostgreSQL, MyS
Creates database tables automatically from model definitions for development and prototyping.
TinyBase est un magasin de données réactif et une base de données relationnelle en mémoire conçue pour la persistance de l'état côté client. Il sert de moteur de synchronisation local-first qui fusionne l'état distribué en utilisant des types de données répliqués sans conflit (CRDT) et des horloges logiques pour assurer une convergence déterministe des données. Le projet présente une bibliothèque de validation de schéma qui convertit les définitions externes provenant d'outils comme Zod, Yup et TypeBox en définitions de magasin typées. Il fournit une infrastructure pour l'édition collaborative en temps réel, utilisant la synchronisation avec Automerge, Yjs et PartyKit pour maintenir un état cohérent entre plusieurs clients et serveurs. La surface de capacité inclut la modélisation de données relationnelles avec des tables et des clés étrangères, des requêtes et indexations de type SQL, et des transactions atomiques pour les mutations groupées. Il prend en charge un large éventail d'adaptateurs de persistance, incluant le stockage navigateur, SQLite et Cloudflare Durable Objects. Le système fournit également une liaison d'état bidirectionnelle et des composants déclaratifs pour l'intégration avec React, SolidJS et Svelte.
Transforms schemas defined with the Effect library into a format compatible with the data store schema system.
react-native-config est un gestionnaire d'environnement mobile multiplateforme et un outil de configuration de build natif. Il implémente les principes de configuration d'application "twelve-factor" en séparant les paramètres spécifiques à l'environnement du code de l'application. Le projet fournit un mécanisme pour injecter des variables d'environnement directement dans les fichiers de projet natifs et les paramètres de build pendant le processus de compilation. Il fonctionne également comme un chargeur de configuration typé qui génère des définitions TypeScript pour les variables d'environnement afin d'assurer l'autocomplétion et la sécurité. L'outil gère les configurations multi-environnements en chargeant des variables spécifiques à partir de fichiers basés sur des cibles de build actives ou des étapes de déploiement. Il fait le pont entre ces valeurs du stockage de la plateforme native vers le runtime JavaScript.
Produces TypeScript type definitions for environment variables to ensure autocompletion and type safety.
Ce projet est un framework gRPC pour Node.js utilisé pour implémenter des appels de procédure distante (RPC) haute performance. Il fournit une bibliothèque de communication client-serveur qui utilise HTTP/2 pour le streaming, le multiplexage et le cadrage binaire, ainsi qu'une implémentation de protocol buffers pour définir des données structurées et générer des stubs de service. Le framework inclut une chaîne d'outils pour compiler les fichiers protocol buffer en objets spécifiques au langage et prend en charge la génération de définitions de type TypeScript statiques pour valider les objets à l'exécution. La bibliothèque couvre la mise en réseau des systèmes distribués et la communication entre microservices, incluant le chiffrement SSL/TLS, la compression des messages et l'équilibrage de charge. Elle gère le cycle de vie des requêtes via des délais, des tentatives, la récupération de connexion et l'annulation d'appels. Les capacités supplémentaires incluent le streaming de données bidirectionnel, la réflexion de service pour la découverte programmatique et des services de vérification de santé standardisés.
Provides a utility to generate static TypeScript type definitions from protobuf files for runtime validation.
This project is a database version control system and schema evolution manager designed to track and apply incremental changes to database structures. It serves as a tool for versioning SQL database migrations using both programmatic PHP classes and SQL scripts. The system is designed specifically for integration with the Doctrine Object Relational Mapper for PHP, allowing database schemas to evolve incrementally without data loss through reversible migration steps. It covers capabilities for automated database migrations, environment synchronization, and schema versioning. These features fa
Designed to work specifically with the Doctrine ORM to generate and manage database schemas.
Scala.js est un compilateur et une chaîne d'outils linguistique multiplateforme qui transforme le code source Scala en JavaScript ou WebAssembly. Il fonctionne comme un outil typé statiquement pour l'écosystème JavaScript, permettant le développement d'applications pour les navigateurs web et les environnements Node.js. Le projet sert de framework d'interopérabilité JavaScript, permettant la création de façades et de bindings typés pour interagir avec des bibliothèques externes et des objets globaux. Il fournit des mécanismes pour l'invocation JavaScript statique et dynamique, incluant la génération de bindings TypeScript et la capacité d'exporter une logique interne pour une utilisation dans du code JavaScript externe. La chaîne d'outils inclut un outil de build frontend pour le bundling de production et l'optimisation de sortie, incluant l'élimination de code mort et le découpage de modules. Elle couvre une large surface de fonctionnalités, incluant la vérification de type des éléments DOM pour le développement d'interface, le partage de code multiplateforme pour le développement full-stack, et divers frameworks de test pour vérifier les artefacts de build optimisés. Les scripts compilés peuvent être exécutés directement au sein d'un environnement en ligne de commande en utilisant un interpréteur JavaScript.
Converts type definition files into facades to provide static typing for JavaScript libraries.