31 repositorios
Utilities for performing recursive clones, merges, and property updates on nested data structures.
Distinct from Object Property Accessors: Distinct from Object Property Accessors: handles structural modification and cloning rather than just retrieving values.
Explore 31 awesome GitHub repositories matching data & databases · Deep Object Manipulations. Refine with filters or upvote what's useful.
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 comprehensive utilities for deep cloning, merging, and manipulating nested object structures.
This is a persistent data structure library for JavaScript that provides collections which prevent the direct mutation of objects and arrays. It serves as an immutable state management tool and functional programming utility, ensuring that data remains unchanged after creation to simplify change detection and state tracking. The library enables the maintenance of application state by producing new versions of data structures during updates. It focuses on efficient data comparison by checking actual content instead of memory references and supports a functional programming workflow to prevent
Provides utilities for performing deep updates and merges on nested data structures via path-based access.
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 utilities for recursive property updates and structural modifications of deeply nested data structures.
Immer is an immutable state management library for JavaScript that enables the creation of new versions of state trees. It functions as a state container that uses a proxy-based handler to ensure data immutability. The library utilizes a copy-on-write mechanism and a draft-based mutation model. This allows users to write mutating code on a temporary proxy, which the system then uses to produce a new immutable result while keeping the original state unchanged. The project covers immutable state management and complex object cloning to facilitate predictable state transitions. These capabiliti
Enables deep cloning and manipulation of nested objects and arrays without manual spread operators.
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
Converts deeply nested objects into flat structures using dot-separated keys.
This project is a comprehensive collection of web development reference guides and technical cheat sheets. It provides a curated set of markdown-based documentation designed to help developers quickly locate syntax patterns and API examples for common web technologies and programming languages. The repository serves as a specialized reference library covering several distinct technical domains. It includes extensive guides for CSS, focusing on selectors, Flexbox, Grid, and responsive layout properties, as well as a DevOps command reference for Docker, Kubernetes, AWS, Ansible, and general she
Offers syntax examples for deleting single or multiple keys from objects to prune unnecessary data.
Store.js is a client-side state persistence library and web storage abstraction layer. It provides a consistent browser key-value storage wrapper that manages the persistence of application state across sessions using the most capable available local storage mechanism. The engine is extensible, allowing for the integration of custom storage backends and plugins to modify how data is read and written. It functions as a reactive web storage manager, monitoring specific keys to trigger notifications when stored values are updated. The library handles automatic data serialization for complex typ
Enables advanced manipulations of nested stored objects without requiring full retrieval and re-saving.
AutoMapper is a .NET object-to-object mapper designed to transfer data between different object types. It functions as an automated mapping library that reduces the need for manual property assignments by using naming conventions to match properties between classes. The library focuses on automating data projection and the conversion of internal domain models into data transfer objects. It supports layered architecture decoupling by mapping data between domain entities and view models. The system employs convention-based member matching, flattening-based property projection, and recursive ty
Converts complex nested source objects into a single-level structure by concatenating property names.
pypdf is a Python library for parsing, manipulating, and generating PDF documents. It provides high-level operations for document processing, such as merging multiple files into one or splitting a single document into smaller files. The project includes specialized tools for managing interactive elements, including the creation and modification of annotations, hyperlinks, and form fields. It also supports advanced metadata management, allowing for the extraction and modification of standard document properties and XML-based XMP metadata. Beyond basic structural changes, the library covers pa
Performs recursive modifications on the hierarchical structure of PDF dictionaries and arrays.
This project is a technical interview preparation resource focused on JavaScript. It provides a collection of common technical questions, detailed answers, and conceptual quizzes designed to help users master core language fundamentals and browser APIs. The resource utilizes an interactive infrastructure that includes a coding workspace with in-browser runtime execution and an automated test suite to validate code correctness. It organizes content through curated learning paths and modular concept mapping to decompose complex language fundamentals into searchable study modules. The curriculu
Provides implementations for recursively merging nested objects to combine data without overwriting structures.
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.
Implements recursive cloning of nested data structures while preserving the object graph to handle circular references.
Cash is a lightweight DOM manipulation library and HTML element wrapper designed as an alternative to jQuery for selecting and modifying elements in modern browsers. It functions as a modular DOM framework and JavaScript utility library, providing a system to wrap DOM nodes into actionable collections for batch processing. The project is built with a modular design that supports tree-shaking, allowing build tools to exclude unused methods to minimize the final bundle size. It provides mechanisms for extending the core functionality and collection prototypes to implement reusable plugins and c
Provides utilities for recursive merging of nested objects to maintain complex data structures.
This is a suite of JavaScript utilities for the bidirectional conversion and manipulation of URL components and query parameters. It provides a mechanism for parsing URL query strings into data objects and serializing those objects back into URL-encoded strings. The library includes functions for filtering, isolating, and modifying parameters within a full URL or query string. It supports the construction of complete web links by combining base addresses with formatted query parameters. The toolset covers data transformation primitives such as alphabetical key sorting, input sanitization, an
Removes specific keys from data objects or strings using custom boolean predicate functions.
xorm is a relational mapper and object-relational mapping tool for Go. It translates Go structures into SQL queries and maps database rows back into native objects, providing a multi-dialect database driver that supports MySQL, PostgreSQL, SQLite, Oracle, SQL Server, and TiDB. The project features a read-write splitting manager that routes modification requests to a primary database and read requests to replicas. It includes a database schema synchronizer to automatically align table structures and indexes with application data models, as well as a fluent SQL query builder for constructing co
Implements flattening of nested Go structures into a single database table for flat row storage.
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 a library to flatten complex data structures into a unique list of all contained objects.
Just es una colección de librerías de utilidades de JavaScript diseñadas para la manipulación de datos, programación funcional, optimización del rendimiento, análisis estadístico y procesamiento de cadenas. Proporciona un conjunto de herramientas para clonación profunda, filtrado y transformación de objetos y arrays complejos. El proyecto está estructurado como una serie de módulos sin dependencias, permitiendo que las utilidades se utilicen de forma independiente para minimizar el tamaño del bundle. Implementa patrones de programación funcional incluyendo currying, piping y aplicación parcial, y proporciona control de ejecución mediante memoización, debouncing y throttling. La librería cubre un amplio rango de capacidades, incluyendo manipulación profunda de objetos, generación de datos combinatorios y operaciones matemáticas como verificación de números primos y acotación numérica. También incluye herramientas estadísticas para calcular métricas como varianza y desviación estándar, así como utilidades de procesamiento de texto para conversión de casos e interpolación de cadenas.
Allows retrieving or setting values at deep property paths without risking runtime errors from undefined parents.
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
Walks input objects and deletes properties not declared on the target TypeScript type, mutating the object in place.
Provides utilities for flattening nested objects into single-level structures.
Este proyecto es una propuesta de lenguaje ECMAScript y extensión de sintaxis de JavaScript diseñada para simplificar el proceso de acceso a propiedades anidadas. Como propuesta de etapa 4 de TC39, proporciona un estándar finalizado para añadir encadenamiento opcional (optional chaining) al lenguaje JavaScript. La extensión previene errores en tiempo de ejecución al leer propiedades de referencias nulas o indefinidas. Esto permite la recuperación segura de valores de cadenas de objetos profundas y la ejecución de funciones dentro de una secuencia sin verificar manualmente cada nivel de la jerarquía. La propuesta cubre capacidades de acceso a datos, incluyendo la habilidad de leer propiedades profundamente anidadas, llamar a funciones de forma opcional y eliminar propiedades opcionales. Estas características facilitan la navegación de objetos en JavaScript y la prevención de errores al manejar estructuras de datos complejas.
Enables removing specific properties from an object without triggering errors if the parent object is missing.
Radash es una librería de utilidades funcionales de TypeScript diseñada para la transformación de datos, validación y gestión de flujos de trabajo. Proporciona una colección de funciones auxiliares tipadas para manipular arrays, objetos y cadenas. El proyecto cuenta con un toolkit de flujo de trabajo asíncrono para gestionar promesas, reintentos y límites de concurrencia, junto con una suite de validadores booleanos para verificar tipos primitivos, objetos y promesas. También implementa patrones de programación funcional como composición de funciones, aplicación parcial y patrones de respuesta de error primero. La librería cubre una amplia superficie de capacidades, incluyendo gestión de estado de objetos con clonación profunda y fusión, manipulaciones complejas de arrays y formateo de cadenas. Adicionalmente proporciona herramientas para la optimización de ejecución, como limitación de tasa (rate limiting) y caché de resultados.
Provides a utility to extract all keys from an object and its children as a flat list of string paths.