awesome-repositories.com
Blog
MCP
awesome-repositories.com

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

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoServidor MCPAcerca deCómo clasificamosPrensa
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

20 repositorios

Awesome GitHub RepositoriesObject Transformation

Operations for cloning, merging, picking, and omitting properties within JavaScript objects.

Distinct from Object Collection Processors: Object Collection Processors is for collections of objects; this focuses on the internal property transformation of a single object.

Explore 20 awesome GitHub repositories matching data & databases · Object Transformation. Refine with filters or upvote what's useful.

Awesome Object Transformation GitHub Repositories

Encuentra los mejores repositorios con IA.Buscaremos los repositorios que mejor coincidan usando IA.
  • lodash/lodashAvatar de lodash

    lodash/lodash

    61,235Ver en GitHub↗

    Lodash is a JavaScript utility library and data manipulation toolkit. It provides a collection of modular functions for transforming, filtering, and validating arrays, objects, strings, and numbers. The project functions as a functional programming toolkit, offering capabilities for function composition, currying, and lazy evaluation. It includes mechanisms for execution control, such as debouncing and throttling, to manage the timing and frequency of function invocations. The library covers a broad surface of data operations, including deep cloning and merging of complex nested structures,

    Provides deep and shallow operations to clone, merge, pick, omit, or update properties within objects.

    JavaScriptjavascriptlodashmodules
    Ver en GitHub↗61,235
  • immutable-js/immutable-jsAvatar de immutable-js

    immutable-js/immutable-js

    33,060Ver en GitHub↗

    Immutable.js is a library of persistent data structures and a functional state management toolkit. It provides a collection of immutable objects and arrays that prevent direct mutation to ensure predictable state management in JavaScript applications. The library utilizes structural sharing to efficiently create new versions of data without full copying and implements lazy sequence processing to chain data transformations that execute only when values are requested. It also supports batch mutation processing, allowing multiple changes to be applied to a temporary mutable copy before returning

    Provides object transformation utilities to export immutable collections back into plain JavaScript objects or arrays.

    TypeScript
    Ver en GitHub↗33,060
  • jashkenas/underscoreAvatar de jashkenas

    jashkenas/underscore

    27,345Ver en GitHub↗

    Underscore is a JavaScript utility library providing a suite of functional programming and data manipulation helpers. It serves as a framework for transforming data collections, composing functions, managing objects, and performing precise data type validation without modifying core language prototypes. The project includes a functional programming toolkit designed to control function execution timing and behavior through techniques such as debouncing, throttling, and partial application. It also provides a dedicated object manipulation utility for cloning, merging, picking, and omitting prop

    Provides utilities for cloning, merging, picking, and omitting properties from JavaScript objects.

    JavaScript
    Ver en GitHub↗27,345
  • ramda/ramdaAvatar de ramda

    ramda/ramda

    24,072Ver en GitHub↗

    Ramda is a functional JavaScript standard library and toolset for immutable data transformation and composition. It provides a comprehensive suite of pure utility functions designed to enable declarative data processing pipelines. The library is distinguished by its use of automatic function currying and a data-last argument order. These design patterns allow multi-argument functions to be partially applied, simplifying the construction of processing chains where data is passed through a sequence of operations. The toolkit covers broad data manipulation capabilities, including list processin

    Locates specific objects within lists using unique identifiers.

    JavaScriptjavascriptramda
    Ver en GitHub↗24,072
  • sindresorhus/type-festAvatar de sindresorhus

    sindresorhus/type-fest

    17,233Ver en GitHub↗

    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 deep and shallow object transformation types for merging and omitting properties.

    TypeScriptnpm-packagetypestypescript
    Ver en GitHub↗17,233
  • hackernews/apiAvatar de HackerNews

    HackerNews/API

    13,128Ver en GitHub↗

    This project is a public community data API that provides a RESTful interface for accessing real-time discussions and metadata. It serves as a JSON data provider, offering structured community information for use in third-party client and server applications. The interface enables the retrieval of public items, stories, and comments, as well as public account information for specific users. It provides capabilities for fetching filtered lists of stories based on ranking or novelty and allows for the discovery of recent items to track new content updates. The system covers a broad range of da

    Implements retrieval of specific stories, comments, or users using unique alphanumeric keys.

    Ver en GitHub↗13,128
  • clojure/clojureAvatar de clojure

    clojure/clojure

    11,006Ver en GitHub↗

    Clojure is a general-purpose, functional programming language hosted on the Java Virtual Machine. It is a homoiconic S-expression language that represents programs as nested data structures, allowing code to be manipulated and evaluated as data. The project provides a framework for JVM interoperability, enabling the invocation of Java methods and integration with other JVM-based languages. It distinguishes itself through a persistent data structure library that uses bitmapped vector tries to manage immutable collections and a programmatic REPL for interactive software development and real-tim

    Converts complex objects into data structures to enable easier navigation using a data-centric facility.

    Java
    Ver en GitHub↗11,006
  • netflix/falcorAvatar de Netflix

    Netflix/falcor

    10,572Ver en GitHub↗

    Falcor is a JavaScript library that models remote data as a single virtual JSON graph, providing a path-based query engine for efficient client-side data retrieval and updates. It represents multiple remote data sources as a unified document where entities are accessed via globally unique identity paths. The system distinguishes itself by treating the remote data model as a virtual JSON resource, allowing the client to query specific paths without managing individual endpoints. It uses a reference-aware graph model to handle many-to-many relationships and prevents data duplication. Network ef

    Creates a new model bound to a specific object by its identity to target entities correctly.

    JavaScript
    Ver en GitHub↗10,572
  • myclabs/deepcopyAvatar de myclabs

    myclabs/DeepCopy

    8,891Ver en GitHub↗

    DeepCopy is a recursive object cloning library designed to create independent copies of complex nested objects. It functions as a state snapshot utility and object cloning tool that produces clones while preserving the original object graph. The library includes a circular reference handler to duplicate data structures containing self-referencing loops without causing infinite recursion. It also serves as an object property transformer, allowing for the filtering or modification of specific fields and types during the cloning process based on custom matching criteria.

    Allows for cloning, picking, and omitting properties within objects using custom matching criteria.

    PHPcloneclone-deep
    Ver en GitHub↗8,891
  • metalsmith/metalsmithAvatar de metalsmith

    metalsmith/metalsmith

    7,827Ver en GitHub↗

    Metalsmith is a Node.js static site generator and static content processor that transforms source files into websites, eBooks, or technical documentation. It functions as a file-to-object transformer, converting directory trees into plain JavaScript objects that can be programmatically manipulated in memory. The project is built around a pluggable build pipeline where files are passed through a sequence of custom functions to transform content and metadata incrementally. This architecture allows users to extend functionality by writing their own plugins or using third-party modules to define

    Converts source directories into JavaScript objects to allow plugins to manipulate the site structure programmatically.

    JavaScriptjavascriptmarkdownmarkdown-to-html
    Ver en GitHub↗7,827
  • typestack/class-transformerAvatar de typestack

    typestack/class-transformer

    7,334Ver en GitHub↗

    class-transformer is a TypeScript library that converts plain JavaScript objects into typed class instances and back, using decorators to define transformation rules. It serves as a decorator-based object transformer, JSON deserialization library, and property transformation framework, enabling type-safe serialization and deserialization of class instances. The library distinguishes itself through comprehensive property filtering and mapping capabilities. It supports excluding properties by default, by prefix, by operation (serialization or deserialization), or by explicit marking, as well as

    Converts class instances back into plain JavaScript objects for serialization or transmission.

    TypeScriptexposing-gettersexposing-propertiestransformation
    Ver en GitHub↗7,334
  • mobxjs/mobx-state-treeAvatar de mobxjs

    mobxjs/mobx-state-tree

    7,050Ver en GitHub↗

    MobX State Tree is a structured, tree-based state management library for JavaScript applications that combines typed model definitions with reactive snapshots and patch-based change tracking. It provides a reactive state container with runtime and compile-time type safety, where application state is defined as a tree of typed models with collocated actions, computed views, and lifecycle hooks for predictable state mutations. The library is built around an action-centric mutation model that encapsulates all state changes within named functions that directly modify the tree, supported by genera

    Converts a model tree into an immutable plain JavaScript object for transport or serialization.

    TypeScripthacktoberfestmobxmobx-state-tree
    Ver en GitHub↗7,050
  • sebastianbergmann/object-enumeratorAvatar de sebastianbergmann

    sebastianbergmann/object-enumerator

    6,537Ver en GitHub↗

    Object-enumerator is a data structure crawler and enumeration library designed to discover and list all objects stored within deep or circular data references. It functions as a traversal tool that recursively walks through nested arrays and object graphs to identify every individual referenced object. The library flattens complex hierarchical data structures into a linear collection of unique objects. This process enables data structure analysis and memory reference mapping by tracing all objects connected to a root element to understand the overall composition of a data set.

    Provides utilities to navigate and enumerate every individual object referenced within a complex data set.

    PHP
    Ver en GitHub↗6,537
  • samchon/typiaAvatar de samchon

    samchon/typia

    5,837Ver en GitHub↗

    Typia is a compile-time code generator that transforms TypeScript type annotations into runtime validation, serialization, and schema functions without requiring decorators or separate schema files. It generates optimized validation and serialization code during TypeScript compilation, producing dedicated functions for each type that eliminate runtime schema objects for faster execution. The project extends this core capability into several integrated areas. It generates fully typed client SDKs from NestJS controller source code, keeping server and client types synchronized automatically. It

    Reconstructs class instances with prototypes and methods from plain objects using factories, constructors, or field copies.

    Go
    Ver en GitHub↗5,837
  • 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

    Provides instance-aware converters that receive the current instance during conversion.

    Python
    Ver en GitHub↗5,799
  • piotrwitek/utility-typesAvatar de piotrwitek

    piotrwitek/utility-types

    5,759Ver en GitHub↗

    Esta es una librería de tipos de utilidad de TypeScript que proporciona alias de tipo avanzados y tipos mapeados para transformaciones complejas de objetos y uniones. Implementa herramientas especializadas para crear tipos nominales marcados, extraer metadatos de tipo y realizar operaciones de conjuntos en tipos de unión. El proyecto destaca por un kit de herramientas para transformaciones de objetos recursivas, permitiendo la aplicación de restricciones de propiedad como estado de solo lectura u opcional a través de estructuras profundamente anidadas. También proporciona un sistema para calcular intersecciones, diferencias y complementos entre tipos de unión para simular la lógica de conjuntos matemática. La librería cubre una amplia gama de capacidades del sistema de tipos, incluyendo filtrado de propiedades de objeto, comparación de formas y la extracción de constructores de clases y tipos de resolución de promesas. Adicionalmente incluye utilidades para la validación de valores, como la detección de valores falsy o nullish y la identificación de tipos primitivos.

    Enables recursive modification of properties in deep object structures to change mutability or requirement status.

    TypeScriptmapped-typesstatic-typingtypescript
    Ver en GitHub↗5,759
  • vuejs/vue-class-componentAvatar de vuejs

    vuejs/vue-class-component

    5,763Ver en GitHub↗

    Esta librería proporciona un patrón estructural para construir componentes de interfaz de usuario utilizando clases y decoradores de ES6. Funciona como una librería de componentes de TypeScript que permite a los desarrolladores gestionar el estado y la lógica dentro del framework Vue definiendo componentes como clases en lugar de utilizar objetos de opciones estándar. El proyecto utiliza un decorador de TypeScript para traducir las propiedades y métodos de la clase al formato estándar requerido por el entorno de ejecución del framework. Este enfoque permite una arquitectura de componentes basada en clases que aprovecha TypeScript para mejorar la seguridad de tipos y la organización del código. El sistema convierte las definiciones basadas en clases en objetos JavaScript simples a través de la extracción de lógica basada en prototipos y el mapeo basado en decoradores. Además, sincroniza las actualizaciones de datos mapeando los miembros de la instancia de clase al sistema de estado reactivo del componente.

    Converts class-based component definitions into plain JavaScript objects to maintain compatibility with the framework's internal options system.

    TypeScript
    Ver en GitHub↗5,763
  • biolab/orange3Avatar de biolab

    biolab/orange3

    5,635Ver en GitHub↗

    Orange3 is a visual data mining platform that provides an interactive canvas for building data analysis workflows without writing code. At its core, it offers a widget-based visual programming environment where users connect configurable components to perform data preprocessing, machine learning model training, statistical evaluation, and interactive visualization. The platform is built on NumPy-backed data tables with domain descriptors that define variable names, types, and roles, and includes a lazy SQL query proxy for working with database tables without loading all data into memory. The

    Transforms individual data instances between different domain schemas with automatic value conversion.

    Python
    Ver en GitHub↗5,635
  • qpdf/qpdfAvatar de qpdf

    qpdf/qpdf

    4,780Ver en GitHub↗

    qpdf is a collection of specialized utility tools for the structural transformation, metadata inspection, file optimization, and cryptographic management of PDF documents. It provides a command line tool for transforming and inspecting internal PDF structures, a structural transformer for reorganizing pages and merging documents, and an encryption engine for managing passwords and restrictions. The project distinguishes itself through a technical approach to document manipulation, utilizing an object-based structural representation to modify files as a graph of unique objects. It includes a m

    Rearranges internal objects to allow the first page to render before the entire file downloads.

    C++pdfpdf-document-processor
    Ver en GitHub↗4,780
  • spatie/data-transfer-objectAvatar de spatie

    spatie/data-transfer-object

    2,226Ver en GitHub↗

    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

    Provides immutable methods for filtering and transforming object properties to control output resources.

    PHPobjectsphpvalue
    Ver en GitHub↗2,226
  1. Home
  2. Data & Databases
  3. Ordered Data Structures
  4. Ordered Collection Literals
  5. Object Collection Processors
  6. Object Transformation

Explorar subetiquetas

  • Class Instance to Plain Object Converters2 sub-etiquetasConverts class instances back into plain JavaScript objects for serialization or transmission. **Distinct from Object Transformation:** Distinct from Object Transformation: specifically converts class instances to plain objects, not general property manipulation on arbitrary objects.
  • Identifier-Based LookupsRetrieval of a specific object from a collection based on a unique key. **Distinct from Object Transformation:** Focuses on locating a single object by ID rather than general property transformation.
  • Linearized Object OrderingRearranges document objects to optimize streaming and rendering speed. **Distinct from Object Transformation:** Specifically handles linearizing PDF object streams for web viewing, unlike general JavaScript object transformation.
  • Object Graph Navigators1 sub-etiquetaUtilities for converting complex object graphs into traversable data structures. **Distinct from Object Transformation:** Focuses on converting objects for navigation rather than modifying properties of a single object
  • Plain Object to Class Instance Converters1 sub-etiquetaConverts plain JavaScript objects into instances of specified classes, preserving type structure. **Distinct from Object Transformation:** Distinct from Object Transformation: specifically converts plain objects into typed class instances, not general property manipulation.
  • Recursive Property TransformationsRecursive modification of properties within deep object structures to change requirement or mutability status. **Distinct from Object Transformation:** Focuses on the recursive application of transformations to nested properties, rather than flat object picking or omitting.
  • TypesType-level operations for merging, omitting, and modifying object property structures. **Distinct from Object Transformation:** Focuses specifically on the type definitions for transformations, not runtime object manipulation.