20 repositorios
Approaches that leverage standard language type annotations to define data structures and validation rules.
Distinguishing note: Focuses on using native type hints for schema definition, avoiding custom domain-specific languages.
Explore 20 awesome GitHub repositories matching software engineering & architecture · Type-Hint-Based Schema Definitions. Refine with filters or upvote what's useful.
FastAPI is a high-performance Python web framework designed for building REST APIs. It operates as an ASGI web framework, providing a system to create structured HTTP endpoints that automatically serialize data and validate request parameters. The framework utilizes Python type hints to drive data validation and serialization, automatically generating machine-readable OpenAPI and JSON Schema specifications. This process enables the automatic creation of interactive, browser-based API documentation where endpoints can be tested directly. The project includes a dependency injection system for
Uses Python type annotations to automatically drive the serialization of objects into JSON responses.
Pydantic es una biblioteca de validación de datos y un framework de análisis para Python. Funciona como un validador de esquemas basado en tipos que utiliza anotaciones de tipo estándar de Python para garantizar que los datos de entrada se ajusten a esquemas estructurales predefinidos. El proyecto proporciona capacidades para analizar datos sin procesar en objetos tipados mediante la conversión y validación automática de tipos. Esto incluye la serialización de datos y la validación de estructuras de datos para garantizar la corrección. El framework cubre varias áreas de aplicación, incluyendo la verificación de solicitudes de API y la gestión de configuraciones de aplicaciones. Permite la transformación de formatos sin procesar como JSON en objetos estructurados de Python.
Leverages standard Python type annotations to define expected data structures and validation rules.
Pydantic is a data validation and serialization library that enforces schema constraints and performs type conversion on complex data structures. It utilizes standard Python type annotations to define data models, allowing developers to establish structured schemas that automatically enforce business rules and constraints without the need for custom domain-specific languages. The library distinguishes itself by transforming high-level model definitions into optimized code during initialization to minimize runtime overhead. It supports recursive validation for nested data structures and employ
Uses standard Python type annotations to define data structures and validation rules without custom domain-specific languages.
FastMCP is a Python framework designed for building servers that expose functions, resources, and prompts to AI models using the Model Context Protocol. It simplifies the development process by automatically deriving tool metadata, input schemas, and documentation directly from Python function signatures and type hints. The framework provides a unified container for managing these components, allowing developers to build modular applications that integrate seamlessly with AI assistants. The project distinguishes itself through its support for interactive, server-defined user interface compone
Automatically derives tool metadata, input schemas, and documentation from Python function signatures and type hints at runtime.
This project is a Python framework for building command-line interfaces by converting standard functions into executable programs. It uses type hints to automatically infer and generate argument parsers, validation logic, and help documentation, allowing developers to define complex terminal applications through simple function signatures. The framework distinguishes itself through a decorator-driven registration system that enables the construction of hierarchical command trees. It supports dependency injection to manage shared state and runtime configuration across subcommands, and it utili
Uses Python type annotations to automatically infer and generate command-line argument parsers and validation logic.
Elysia is a high-performance TypeScript web framework designed for building type-safe backend services. It provides a modular, plugin-based architecture that allows developers to compose server logic, middleware, and validation schemas into scalable application instances. By leveraging native web standards, the framework ensures portability across diverse JavaScript runtimes, including Node.js, Deno, and various edge computing environments. The framework distinguishes itself through its focus on end-to-end type safety, automatically synchronizing request and response definitions between the s
Leverages native TypeScript type hints to define and validate request and response schemas automatically.
type-fest is a library of reusable utility types for performing complex transformations and validations on objects, arrays, strings, and numeric ranges in TypeScript. It provides a collection of type definitions designed to handle advanced structural changes and constraints. The project distinguishes itself by offering specialized logic for string literal processing, such as casing transformations and pattern-based modifications, and type-level arithmetic for calculating numeric ranges and absolute values. It also includes utilities for enforcing deep immutability, ensuring union mutual exclu
Provides utilities to extend base type definitions for configuration files like package.json.
This project serves as a comprehensive resource hub and curated directory for the FastAPI web framework ecosystem. It provides developers with a centralized collection of community-vetted libraries, tools, and best practices designed to support the development, testing, and deployment of scalable web services using modern Python. The repository distinguishes itself by aggregating resources that address the full lifecycle of high-performance API development. It covers essential capabilities including project scaffolding, database integration, and the implementation of real-time communication p
Validates request payloads and serializes responses using type-hinted data models.
Django Ninja is a high-performance framework for building type-safe REST APIs using Django. It functions as an OpenAPI API framework and a type-safe wrapper that utilizes Python type hints to handle request validation and response serialization. The project distinguishes itself by integrating Pydantic-based data modeling to convert JSON inputs into strongly typed Python objects. It automatically generates OpenAPI schemas and interactive documentation pages directly from defined endpoint signatures. The framework supports asynchronous request processing to handle concurrent tasks. It employs
Leverages standard Python type annotations to define data structures and enforce runtime validation rules.
BentoML is a machine learning model serving framework and GPU-accelerated inference server designed to package, deploy, and scale AI models as production-ready REST APIs. It functions as an AI model lifecycle manager and an inference graph orchestrator, enabling the chaining of multiple models and custom logic into complex pipelines for advanced task sequences. The framework distinguishes itself through a dynamic batching engine that optimizes GPU throughput and an artifact-based packaging system that bundles model weights and dependencies into immutable archives for consistent deployment. It
Leverages Python type annotations to automatically define request and response schemas for REST endpoints.
Litestar is a high-performance Python ASGI web framework designed for building asynchronous APIs and web services. It functions as a type-safe toolkit that leverages Python type hints to provide automatic request validation and response serialization, while natively generating interactive API documentation based on the OpenAPI specification. The framework is distinguished by its integrated dependency injection system, which manages shared resources and resolves complex nested service chains directly within request handlers. It further organizes API development through class-based controllers
Leverages Python type hints to automatically define data structures and validation rules for request and response serialization.
Colyseus is a real-time multiplayer game framework for Node.js that provides an authoritative server model, delta-compressed state synchronization, and room-based session orchestration. It is designed to handle the core infrastructure of multiplayer games, including matchmaking, state management, and scalable process distribution across multiple servers. The framework distinguishes itself through its schema-based state definition, which enables automatic serialization and change tracking, combined with a binary WebSocket protocol for low-latency updates. Its matchmaking pipeline routes player
Defines structured data models with typed fields enabling automatic serialization and change tracking.
FastHTML is a full-stack Python web framework designed for building interactive web applications using pure Python. It functions as an HTMX integration framework and a Python HTML domain-specific language, allowing developers to generate HTML structures using native objects and functions instead of external templating files. The framework is distinguished by its native support for real-time bidirectional communication via WebSockets and Server-Sent Events, enabling server-side updates to be pushed to the browser without full page reloads. It further integrates identity management through OAut
Extracts URL paths and query parameters into typed function arguments using language-level type annotations.
attrs is a Python library that automatically generates initialization, representation, equality, hashing, and ordering methods from declarative class attribute definitions. At its core, it provides a class decorator metaprogramming framework that intercepts class creation to rewrite the class body, producing dunder methods without manual boilerplate. The library includes a comprehensive attribute validation toolkit with built-in validators for type checks, range constraints, regex matching, length limits, and logical composition of validation rules. The library distinguishes itself through it
Serializes and deserializes class instances using a schema library that enforces field types and constraints.
dlt es una herramienta de ingesta de datos en Python y framework de pipeline ETL diseñado para obtener datos de diversas fuentes y persistirlos en destinos estructurados. Funciona como un motor de inferencia de esquemas que detecta automáticamente tipos de datos y aplana estructuras JSON anidadas en tablas relacionales, moviendo datos desde fuentes a lakehouses, almacenes de datos o bases de datos vectoriales. El proyecto destaca por la generación de pipelines impulsada por IA, utilizando modelos de lenguaje de gran tamaño para crear código de extracción y conectores para APIs REST. También admite almacenamiento vectorial multimodal y población especializada de bases de datos vectoriales para soportar aplicaciones de IA y machine learning. El framework cubre una amplia gama de capacidades, incluyendo evolución automática de esquemas, carga incremental de datos mediante seguimiento de estado y validación de calidad de datos mediante la aplicación de contratos de datos. Proporciona herramientas para la normalización de datos relacionales, transformaciones pre y post-carga, y una variedad de adaptadores de destino para bases de datos SQL y almacenes de objetos en la nube. La observabilidad se maneja a través de paneles de ejecución de pipelines, seguimiento de linaje de columnas y verificación de versiones de esquema mediante hashes basados en contenido.
Injects data types and metadata hints into resources during runtime to bypass static schema files.
Hono es un framework HTTP minimalista en JavaScript diseñado para construir servidores web a través de múltiples runtimes, incluyendo Node.js, runtimes de edge y plataformas serverless. Funciona como un servidor web cross-runtime y un wrapper de API estándar web, normalizando varios objetos de petición y respuesta de runtime en firmas de Web API estándar. El proyecto sirve como orquestador de middleware HTTP y manejador de peticiones, utilizando un pipeline de peticiones basado en middleware y montaje jerárquico de rutas para crear estructuras de servidor modulares. Se distingue por un wrapper de eventos agnóstico al runtime que garantiza un comportamiento consistente independientemente del entorno de despliegue. El framework cubre una amplia gama de capacidades, incluyendo enrutamiento de peticiones HTTP con captura de parámetros dinámicos, comunicación WebSocket en tiempo real y medidas de seguridad integrales como gestión de CORS y autenticación básica. También proporciona utilidades para la gestión de sesiones mediante cookies, servicio de activos estáticos y gestión de tráfico mediante proxy de peticiones y redirección de URL. El proyecto está implementado en TypeScript.
Assigns generic types to event handlers to provide automatic typing for request bodies and query parameters.
swagger-php es un generador de especificaciones OpenAPI y biblioteca de documentación de API para PHP. Escanea atributos y anotaciones del código fuente de PHP para producir archivos de especificación estandarizados y referencias de API interactivas. La herramienta funciona como un motor de inferencia de esquemas que deriva tipos de datos y esquemas a partir de sugerencias de tipo nativas de PHP y bloques genéricos. Utiliza análisis estático basado en reflexión para extraer metadatos sin ejecutar la lógica de la aplicación y admite la herencia recursiva de esquemas para fusionar definiciones de clases e interfaces padre. El proyecto incluye una utilidad de línea de comandos para exportar definiciones de API a archivos YAML o JSON estáticos. También proporciona un pipeline para el ensamblaje de especificaciones con lógica de procesamiento conectable para modificar cómo se analiza o estructura el código fuente.
Leverages native PHP type hints and generic blocks to automatically define data structures and validation rules.
Strawberry es una biblioteca GraphQL con tipado fuerte para Python que permite el diseño de esquemas utilizando anotaciones de tipo y dataclasses de Python. Funciona como un servidor GraphQL asíncrono y motor de ejecución, proporcionando un puente para exponer esquemas a través de frameworks web compatibles con ASGI como FastAPI, Django, Flask y Litestar. El proyecto implementa GraphQL Federation, permitiendo la creación de esquemas y entidades distribuidas que se fusionan en un supergrafo unificado a través de múltiples servicios. También incluye un kit de herramientas dedicado para la especificación Relay, soportando la identificación global de objetos y la paginación basada en conexiones. El framework cubre un amplio conjunto de capacidades, incluyendo streaming de datos en tiempo real mediante WebSockets y Server-Sent Events, mapeo de modelos Pydantic y generación automática de código. Proporciona herramientas integradas para seguridad y observabilidad, como limitación de complejidad de consultas, control de acceso basado en roles y rastreo de métricas de ejecución. Los desarrolladores pueden realizar prototipos utilizando un servidor de desarrollo integrado con una interfaz de inspección de esquemas interactiva.
Derives the GraphQL schema structure by inspecting Python type annotations and dataclasses at runtime.
Binance Connector Python is a client library that provides programmatic access to the Binance cryptocurrency exchange, enabling automated trading and asset management across spot, margin, futures, and options markets. The library wraps the exchange's REST and WebSocket APIs into a Python interface with type-hinted methods, HMAC and RSA authentication, and a unified request-response pipeline for consistent error handling and rate limiting. The connector supports a broad range of exchange operations beyond core trading, including sub-account management, wallet operations, and algorithmic order
Uses Python type hints and dataclasses to provide IDE autocompletion and static validation for API parameters and responses.
This library provides a framework for defining typed, immutable data structures in PHP. It enables developers to construct structured objects from raw input arrays, ensuring consistent data shapes and schema integrity across different layers of an application. By enforcing strict property types and validation rules during instantiation, the library prevents invalid data states and simplifies the handling of complex information. The project distinguishes itself through its use of attribute-driven metadata, which allows for property renaming, custom validation, and serialization logic directly
Enforces schema integrity by validating raw input data against class property definitions and type hints during instantiation.