awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
spatie avatar

spatie/data-transfer-objectArchived

0
View on GitHub↗
2,226 estrellas·188 forks·PHP·MIT·0 vistasspatie.be/open-source↗

Data Transfer Object

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 within class definitions. It supports recursive type casting, automatically transforming nested arrays into defined class instances to maintain deep type safety. Additionally, the library includes utilities for static type exporting, which generates interface files to synchronize backend data structures with frontend type systems.

Beyond core modeling, the library facilitates data manipulation through immutable methods for filtering and extracting subsets of object data. It also supports lazy property evaluation for optimized serialization and provides specialized containers for managing collections of typed objects. These capabilities allow for the replacement of manual data transformation and validation logic with a centralized, schema-based approach.

Features

  • Type-Safe Structured Data Frameworks - Provides a framework for defining typed, immutable data structures to replace manual data handling.
  • Data Validation - Enforces strict property types and validation rules during instantiation to ensure data integrity.
  • Data Type Casting - Transforms raw input arrays into typed objects using built-in conversion logic to ensure data matches expected formats.
  • Structural Data Validators - Validates input data against defined class properties and types to ensure consistent object structure throughout the application lifecycle.
  • Attribute Metadata Annotations - Uses language-level attributes to define property metadata, validation rules, and serialization behavior directly within class definitions.
  • Input Data Validations - Transforms raw input arrays into validated typed objects during the instantiation process.
  • Data Transfer Objects - Constructs structured objects from input data to enforce type safety and consistent data shapes across application layers.
  • Immutable Data Management - Enforces strict schemas and property immutability to prevent unintended side effects and ensure data consistency.
  • Object Casting Frameworks - Automatically transforms nested arrays and input data into typed objects using custom or built-in conversion logic.
  • Object Validations - Allows custom validation logic via attributes to ensure business rules are met during object construction.
  • Schema-Validated Class Serializers - Enforces schema integrity by validating raw input data against class property definitions and type hints during instantiation.
  • Data Validation - Automatically resolves validation rules from property types to validate raw request inputs upon object creation.
  • Structured Return Objects - Constructs objects from arrays or named arguments to enforce consistent structure when passing data across application layers.
  • Schema Type Synchronization - Generates interface files from backend data structures to synchronize type systems with frontend code.
  • Strict Schema Enforcers - Restricts object creation to defined properties by applying strict mode attributes to prevent the inclusion of unexpected data fields.
  • Typed Data Collections - Provides specialized collection containers that enforce type validation for lists of structured data objects.
  • Static Type Generators - Generates interface files from class definitions to synchronize backend data structures with frontend type systems.
  • Type Definition Generators - Includes utilities for exporting backend data object definitions as interface files for frontend type checking.
  • Recursive Object Type Transformers - Automatically transforms nested arrays and objects into defined class instances to maintain deep type safety across complex data hierarchies.
  • Accessor Type Castings - Applies custom casting logic during object instantiation to transform input data into nested objects or collections.
  • Type-Safe Model Definitions - Constructs structured objects from raw input arrays to ensure consistent data shapes and prevent invalid states.
  • Immutability Enforcement Utilities - Prevents modification of object properties after initialization to ensure data consistency and avoid unintended side effects.
  • Immutable Data Patterns - Implements immutable object patterns to ensure data consistency and prevent unintended side effects throughout the application lifecycle.
  • Nested Object Hierarchies - Converts nested arrays or objects into defined data transfer objects to maintain deep type safety throughout complex hierarchies.
  • Nested Object Serializers - Supports recursive type casting to convert nested arrays into defined class instances for deep type safety.
  • Type-Safe Frontend Integrations - Exports backend data definitions as interface files to ensure consistent type checking between server and client code.

Historial de estrellas

Gráfico del historial de estrellas de spatie/data-transfer-objectGráfico del historial de estrellas de spatie/data-transfer-object

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Preguntas frecuentes

¿Qué hace spatie/data-transfer-object?

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.

¿Cuáles son las características principales de spatie/data-transfer-object?

Las características principales de spatie/data-transfer-object son: Type-Safe Structured Data Frameworks, Data Validation, Data Type Casting, Structural Data Validators, Attribute Metadata Annotations, Input Data Validations, Data Transfer Objects, Immutable Data Management.

¿Qué alternativas de código abierto existen para spatie/data-transfer-object?

Las alternativas de código abierto para spatie/data-transfer-object incluyen: python-attrs/attrs — attrs is a Python library that automatically generates initialization, representation, equality, hashing, and ordering… api-platform/core — This project is a PHP-based framework designed for the automated development of standardized web services. It… 567-labs/instructor — Instructor is a framework designed for structured data extraction, validation, and language model integration. It… symfony/validator — This library is a PHP framework for enforcing data integrity and business rules by validating scalar values and… remix-run/examples — This repository serves as a comprehensive collection of reference implementations for the Remix web framework. It… gvergnaud/ts-pattern — This library provides a declarative approach to conditional logic in TypeScript, replacing imperative branching with…

Colecciones destacadas con Data Transfer Object

Colecciones seleccionadas manualmente donde aparece Data Transfer Object.
  • Data schema definition

Alternativas open-source a Data Transfer Object

Proyectos open-source similares, clasificados según cuántas características comparten con Data Transfer Object.
  • python-attrs/attrsAvatar de python-attrs

    python-attrs/attrs

    5,799Ver en GitHub↗

    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

    Python
    Ver en GitHub↗5,799
  • api-platform/coreAvatar de api-platform

    api-platform/core

    2,564Ver en GitHub↗

    This project is a PHP-based framework designed for the automated development of standardized web services. It functions as a backend toolkit that maps internal data models to REST and GraphQL endpoints, providing built-in support for resource management, data serialization, and hypermedia-aware API operations. The framework distinguishes itself through a metadata-driven architecture that uses class-level attributes to automatically derive API schemas, validation rules, and documentation. By analyzing these definitions at runtime, it generates machine-readable specifications and interactive in

    PHPapiapi-platformgraphql
    Ver en GitHub↗2,564
  • 567-labs/instructorAvatar de 567-labs

    567-labs/instructor

    13,176Ver en GitHub↗

    Instructor is a framework designed for structured data extraction, validation, and language model integration. It functions as a library that transforms unstructured text into validated, type-safe objects by leveraging schema definitions and model-specific tool-calling capabilities. By acting as a validation middleware, the project ensures that language model outputs strictly conform to defined data structures. The library distinguishes itself through a robust validation-based retry loop that automatically re-submits failed responses with error feedback to iteratively correct schema complianc

    Pythonopenaiopenai-function-calliopenai-functions
    Ver en GitHub↗13,176
  • symfony/validatorAvatar de symfony

    symfony/validator

    2,689Ver en GitHub↗

    This library is a PHP framework for enforcing data integrity and business rules by validating scalar values and complex object structures against predefined constraints. It provides a structured approach to inspecting object graphs and property metadata, ensuring that data conforms to expected requirements before it is processed by an application. The framework distinguishes itself through a metadata-driven mapping system that uses reflection or configuration files to apply rules directly to object properties. It supports contextual rule orchestration, allowing developers to organize constrai

    PHPcomponentphpsymfony
    Ver en GitHub↗2,689
  • Ver las 30 alternativas a Data Transfer Object→