24 Repos
Tools that generate server, client, and CLI code from OpenAPI/Swagger specification documents.
Distinct from Specification from Code Generators: Distinct from Specification from Code Generators: generates code from the specification, not the specification from code.
Explore 24 awesome GitHub repositories matching software engineering & architecture · Code from Specification Generators. Refine with filters or upvote what's useful.
Protocol Buffers is a binary serialization framework used to encode structured information into compact payloads to reduce network bandwidth and storage. It functions as a cross-language data interchange standard that enables different platforms and languages to exchange structured data using a shared schema. The project includes an interface definition language compiler that transforms schema definitions into type-safe source code for multiple target programming languages. This mechanism decouples data structures from specific language memory layouts and ensures consistent data handling acro
Converts data definitions into source code for multiple programming languages to ensure consistent data handling.
go-swagger is a toolkit for working with Swagger/OpenAPI 2.0 specifications in Go. It generates server, client, and CLI code from a specification document, and can also produce a specification by scanning annotated Go source code. The project includes a static validation engine that checks documents against the schema and project-specific rules, and a specification transformation pipeline that resolves, flattens, and merges documents. The toolkit generates both client and server code from the same specification, ensuring consistency in request and response handling. It also produces a command
Generates Go server, client, and CLI code from Swagger/OpenAPI 2.0 specification documents.
LaVague is an LLM web agent framework and large action model designed to translate natural language instructions into executable browser automation scripts. It functions as a multi-modal orchestrator that reasons over web page states and HTML content to automate multi-step tasks via a Selenium-based automation engine. The framework features a modular model provider layer, allowing users to swap between different language and vision models from providers such as Anthropic, Gemini, and Azure OpenAI. It employs a multi-modal world model to process screenshots and HTML structures, utilizing retri
Transforms test specifications into executable code for web applications without requiring manual CSS or XPath selectors.
CUE is a constraint-based configuration language designed for data validation, schema definition, and code generation. At its core, it unifies types and values into a single concept, enabling compile-time validation that catches structural and value errors before runtime. The language treats data and constraints as the same thing, allowing a single definition to serve as both a schema and concrete configuration data. CUE distinguishes itself through its constraint-based unification engine, which combines multiple configuration sources into a single coherent result by merging their constraints
Generates Go code, Protobuf definitions, and OpenAPI specs from CUE schemas.
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
Reads OpenAPI or Swagger specifications and produces TypeScript API clients, hooks, and mocks.
Tailwind Starter Kit is a copy-paste UI component library built with Tailwind CSS, designed to accelerate front-end development by providing pre-built, reusable interface blocks that can be inserted directly into any project without package managers or build tools. It delivers identical UI components as native code for React, Vue, Angular, and plain HTML, making it a framework-agnostic resource for assembling responsive layouts. The kit structures its UI blocks as plain Tailwind markup that AI code generators can parse and reproduce from natural-language descriptions, making it compatible wit
Generates framework-specific component code from a single source of Tailwind utility classes and HTML structure.
Material Kit is an open-source UI component library that provides pre-styled Material Design elements for building responsive web interfaces with Bootstrap 5. It offers a collection of reusable components like buttons, inputs, navbars, cards, and modals that follow Google's Material Design guidelines, along with a 12-column flexbox grid system for fluid layouts that adapt to any screen size. The kit distinguishes itself by including pre-built page sections such as headers, feature blocks, pricing tables, and footers that can be combined into complete page layouts, reducing the time needed to
Generates framework-specific component code from a single Material Design source for multiple frameworks.
Lamp Cloud is a multi-tenant SaaS backend framework built on Java and Spring Cloud that provides a complete foundation for building enterprise-grade administration systems. Its core identity centers on supporting multiple tenant isolation strategies—including database-per-tenant, schema-per-tenant, and shared-table modes—that can be switched without altering business code, alongside a role-based access control system enforced at the gateway layer across all microservices. The framework distinguishes itself through comprehensive tenant lifecycle management tools that allow creating, configurin
Generates controller, service, mapper, and frontend files from database tables to accelerate CRUD development.
seL4 is a formally verified microkernel whose C implementation is backed by machine-checked mathematical proofs of correctness, confidentiality, integrity, and availability. It enforces strict isolation between processes through hardware-enforced address space separation and a capability-based access control system, where each process holds explicit rights only to the resources it has been granted. The kernel exposes hardware resources through a minimal API of system calls that manage threads, address spaces, and inter-process communication, with synchronous IPC supporting sender-identifying b
Generates C bitfield types with accessor functions from declarative bit-level specifications.
The Azure SDK for Python is a collection of libraries that enables programmatic management of Azure cloud resources and services directly from Python code. It provides a credential-based authentication pipeline for secure access, along with an async-first client design that supports concurrent I/O operations without blocking the event loop. The SDK is built on AutoRest-generated client code from OpenAPI specifications, offering both synchronous and asynchronous service clients. It includes a long-running operation poller abstraction for managing operations that require status checks and retry
Generates Python client libraries from OpenAPI specifications using AutoRest code generation.
MyBatis Generator ist ein Tool, das Datenbanktabellen inspiziert, um automatisch Modellobjekte, Mapper-Schnittstellen und SQL-Konfigurationsdateien zu erstellen. Es fungiert als Datenbank-Schema-Mapper und CRUD-Operations-Generator, der relationale Datenbankspalten in sprachspezifische Klassen und Datensätze übersetzt. Das Projekt ist ein erweiterbarer Codegenerator, der die Anpassung von Ausgabedateien durch einen Plugin-Mechanismus ermöglicht. Dieses Framework erlaubt das Hinzufügen spezifischer Geschäftslogik oder die Modifikation des Generierungsprozesses, um maßgeschneiderte Ausgabedateien zu erzeugen. Der Generator deckt ein breites Spektrum an Funktionen ab, einschließlich der Implementierung dynamischer Abfragen, der Erstellung unveränderlicher Modelle und der Automatisierung von Standard-Create-, Read-, Update- und Delete-Operationen. Er unterstützt Datenbank-Schema-Mapping mit virtuellen Primärschlüsseln und kann Code für mehrere Sprachen generieren, einschließlich Kotlin. Der Generierungsprozess kann über CLI-Tools, direkte Funktionsaufrufe oder als Build-Tool-Plugin, das in CI-Pipelines integriert ist, ausgeführt werden.
Produces source files and XML configurations by inspecting database table metadata and column definitions.
Blog.Core is a production-ready backend boilerplate for building enterprise APIs and microservices using ASP.NET Core. It provides a foundational infrastructure for distributed systems, including tools for database-first scaffolding and the implementation of multi-tenant API frameworks. The project distinguishes itself through automated data layer generation, which produces entity models and repository layers directly from database schemas. It implements a centralized identity management system using standard identity server protocols to handle authentication and authorization across multiple
Automatically generates entity models and API controllers by scanning database schemas using predefined templates.
LoopBack Next is a Node.js API framework used for building REST and multi-protocol APIs. It functions as an OpenAPI server implementation that can either generate machine-readable specifications from code or produce implementation controllers and models from existing specifications. The framework distinguishes itself through a central dependency injection container and a repository-pattern data access layer. This architecture decouples application logic from component construction and persistent storage, allowing for a pluggable system where data sources and business logic are isolated throug
Produces implementation controllers and models directly from OpenAPI specifications to ensure design compliance.
Prototool ist ein Entwicklungs-Toolkit für Protocol Buffers, das eine Suite an Tools zum Linting, Formatieren und Generieren von Code aus Schemadateien bereitstellt. Es fungiert als System zur Verwaltung des Lebenszyklus von Protocol-Buffer-Definitionen über ein Command-Line-Interface. Das Toolkit zeichnet sich durch einen Detektor für Breaking Changes aus, der verschiedene Versionen von Definitionen vergleicht, um inkompatible Änderungen an der Schnittstelle oder am Quellcode zu identifizieren. Es enthält zudem ein gRPC-Client-Interface, das in der Lage ist, Endpunkte mittels JSON-Anfragen durch dynamische Kompilierung von Protobuf-Definitionen aufzurufen. Das Projekt deckt breite Funktionsbereiche ab, einschließlich Schema-Validierung und Style-Durchsetzung, sprachspezifischer Code-Stub-Generierung und automatisierter Verwaltung von Compiler-Binaries. Es bietet zudem Dienstprogramme für den Export von File-Descriptor-Sets und die Generierung von Schemadateien mit automatisiertem Boilerplate.
Transforms schema definitions into source code for various languages using managed compiler versions.
JSONExport ist ein mehrsprachiger Codegenerator und JSON-Schema-Konverter, der JSON-Datenstrukturen in stark typisierte Quellcode-Klassen transformiert. Er dient als API-Response-Mapper, der JSON-Objekte in Data-Transfer-Objects konvertiert, um die Erstellung von Modellklassen zu automatisieren. Das Tool ist auf die Synthese mehrsprachiger Modelle spezialisiert, was es Benutzern ermöglicht, Datenmodelle über verschiedene Programmiersprachen hinweg unter Verwendung einer einzigen JSON-Eingabe zu definieren. Es generiert Klassen-Boilerplate, einschließlich Konstruktoren und Accessoren, und bietet eine Vorschau-Pipeline, um den resultierenden Quellcode vor dem Speichern zu überprüfen. Das Projekt deckt die Implementierung von Datenmodellen und die Generierung von Quellcode-Boilerplate durch einen template-basierten Ansatz ab, der JSON-Datentypen auf spezifische Sprachsyntax mappt.
Automates the creation of DTOs and class definitions across multiple target languages from a single JSON source.
Kaitai Struct ist ein Framework für deklarative Binärspezifikationen, das die automatisierte Parser- und Serializer-Generierung über mehrere Programmiersprachen hinweg ermöglicht. Es verwendet eine portable, domänenspezifische Sprache, um das Layout von Binärdateien und Netzwerkpaketen zu beschreiben, und konvertiert diese Spezifikationen in Quellcode zum Lesen und Schreiben binärer Daten. Das System ermöglicht sprachübergreifende Datenverarbeitung durch die Übersetzung einer einzigen strukturellen Definition in nativen Quellcode für Sprachen wie C++, C#, Go, Java, JavaScript, Python und Rust. Dieser Ansatz ermöglicht es, dieselbe Binärdatenspezifikation über verschiedene Plattformen hinweg zu implementieren, ohne die Parsing-Logik manuell neu schreiben zu müssen. Das Framework deckt die Modellierung und Verarbeitung binärer Daten ab, einschließlich der Fähigkeit, Lesezeiger für die Offset-Navigation zu verwalten und Datentransformationen wie Dekomprimierung und Entschlüsselung anzuwenden. Es bietet zudem Tools für das Debugging von Formatspezifikationen, um das Mapping zwischen Binärdatenlayouts und ihren deklarativen Beschreibungen zu validieren.
Generates native source code for multiple target languages from a single structural binary specification.
Luban ist eine Konfigurations-Toolchain für Spiele, die darauf ausgelegt ist, tabellenbasierte Daten in optimierte Binärformate und typsicheren Quellcode für mehrere Sprachen zu konvertieren. Sie fungiert als umfassende Suite für Konfigurationsvalidierung, Datenserialisierungs-Pipelines und Code-Generierung, um Datenkonsistenz über verschiedene Plattformen hinweg sicherzustellen. Das System verfügt über einen mehrsprachigen Code-Generator, der stark typisierte Datenklassen aus Schemas erstellt, wodurch die Notwendigkeit für Reflection entfällt. Es enthält einen Lokalisierungsmanager für den Export übersetzter Texte und Assets mit gebietsschemaspezifischem Patching sowie eine Serialisierungs-Pipeline, die strukturierte Quelldateien für den effizienten Netzwerktransfer in Binärdateien umwandelt. Die Toolchain bietet eine Konfigurationsvalidierungs-Engine zur Durchführung von referenziellen Integritätsprüfungen und Ressourcenpfad-Verifizierungen. Sie unterstützt zudem komplexe Datenmodellierung durch ein objektorientiertes Typsystem, das Datenvererbung und verschachtelte Strukturen innerhalb von Konfigurationsdateien ermöglicht.
Generates source code for a variety of target languages from a single configuration specification.
FreeSql is a .NET object-relational mapper and data access layer that translates object-oriented code into SQL for multiple relational database providers. It functions as a fluent SQL query builder and database schema synchronizer, allowing developers to align database table and index structures with entity class definitions. The framework is specifically optimized for .NET Native AOT to ensure reduced memory footprints and faster startup times. It includes a database traffic manager to distribute load through read-write splitting, dynamic table sharding, and tenant-based data isolation. Bro
Produces object-oriented entity classes and DTOs automatically based on database metadata and table structures.
Vue.NetCore is a full-stack scaffolding tool that automatically generates frontend and backend code using .NET Core and Vue.js based on database schemas. It functions as a CRUD boilerplate generator and database orchestrator that maps entities into business logic to create administrative interfaces and API endpoints. The project provides a multi-platform UI scaffold, producing compatible code for web, iOS, Android, and WeChat mini-programs. It utilizes a TypeScript web framework with Vite and leverages SqlSugar to automate the mapping of database entities. The system covers enterprise CRUD a
Generates both frontend and backend source code by parsing database schema attributes and configuration metadata.
swagger-typescript-api is a utility that parses OpenAPI definitions to generate strongly typed data models and service wrappers for web applications. It transforms OpenAPI specifications into type-safe TypeScript API clients, removing the need for manual request and response boilerplate. The generator produces interchangeable client logic via pluggable transport adapters, allowing users to switch between Fetch and Axios for network requests. It uses template-based source emission to inject generated types and methods into a consistent client structure. The project handles the mapping of Open
Produces TypeScript source code by parsing OpenAPI specification files and mapping schemas to language constructs.