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

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetServeur MCPÀ proposNotre méthodologiePresse
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

16 dépôts

Awesome GitHub RepositoriesObject Property Transformers

Utilities for filtering or modifying specific properties of an object during a cloning or duplication process.

Distinct from Entity Property Cloning: The provided candidates refer to game entity cloning or repository cloning; this is a general-purpose language-level object property transformer.

Explore 16 awesome GitHub repositories matching programming languages & runtimes · Object Property Transformers. Refine with filters or upvote what's useful.

Awesome Object Property Transformers GitHub Repositories

Trouvez les meilleurs dépôts grâce à l'IA.Nous recherchons les dépôts les plus pertinents grâce à l'IA.
  • myclabs/deepcopyAvatar de myclabs

    myclabs/DeepCopy

    8,891Voir sur 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.

    Provides the ability to filter or modify specific fields and types during the cloning process based on custom matching criteria.

    PHPcloneclone-deep
    Voir sur GitHub↗8,891
  • arktypeio/arktypeAvatar de arktypeio

    arktypeio/arktype

    7,780Voir sur GitHub↗

    Arktype is a TypeScript runtime validation library and schema orchestrator. It synchronizes TypeScript types with runtime data validation, allowing users to define type-safe schemas that ensure unknown data adheres to specific structures during application execution. The project distinguishes itself by using set-theory type analysis to determine intersections and subtype compatibility, alongside JIT-compiled validation functions for optimized performance. It supports advanced type modeling through branded type constraints, recursive alias resolution, and the ability to generate runtime valida

    Transforms object properties by applying mapping functions to keys, values, or property requirement levels.

    TypeScriptjavascriptparsingruntime-typechecking
    Voir sur GitHub↗7,780
  • typestack/class-transformerAvatar de typestack

    typestack/class-transformer

    7,334Voir sur 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

    Applies custom conversion logic, renaming, and filtering to object properties during serialization or deserialization.

    TypeScriptexposing-gettersexposing-propertiestransformation
    Voir sur GitHub↗7,334
  • millsp/ts-toolbeltAvatar de millsp

    millsp/ts-toolbelt

    7,145Voir sur GitHub↗

    ts-toolbelt is a collection of specialized utilities for manipulating and validating TypeScript types. It provides a toolkit for performing complex transformations on objects, unions, and functions to enforce strict data consistency at compile time. The library features dedicated transformers for function types, including utilities for currying, composition, and signature extraction. It also includes an object type manipulator for deep merging, patching, and reshaping complex structures. The capability surface extends to literal string processing, type-level arithmetic, and tuple operations.

    A utility that modifies properties on object types by making them optional, required, or readonly.

    TypeScriptdynamic-typessafetytype-checking
    Voir sur GitHub↗7,145
  • node-config/node-configAvatar de node-config

    node-config/node-config

    6,427Voir sur GitHub↗

    This is a configuration manager for Node.js applications that handles hierarchical settings across different deployment environments. It functions as an environment-based loader and settings parser that merges default configurations with overrides based on the current runtime context and hostname. The project distinguishes itself through a priority-based merge strategy that incorporates environment variables, command-line arguments, and external data sources to supersede file-based settings. It supports multi-format parsing for JSON, YAML, JavaScript, and TypeScript files, and allows for cust

    Implements recursive object merging to combine multiple configuration sources into a single nested structure.

    JavaScriptconfigdeploymentproperties
    Voir sur GitHub↗6,427
  • lightbend/configAvatar de lightbend

    lightbend/config

    6,309Voir sur GitHub↗

    This is a configuration library for JVM applications that parses HOCON, JSON, and Java properties files into an immutable tree structure. It resolves ${...} placeholders by traversing the configuration tree and falling back to environment variables and system properties, and validates loaded configurations against a reference schema. The library loads configuration from classpath resources, files, URLs, system properties, and environment variables, merging them with priority-based override semantics. It provides typed value access with automatic type coercion, supports dot-path navigation,

    Combines configuration objects with precedence rules for layered settings.

    Javaconfiguration-libraryhoconsupported
    Voir sur GitHub↗6,309
  • angus-c/justAvatar de angus-c

    angus-c/just

    6,204Voir sur GitHub↗

    Just est une collection de bibliothèques utilitaires JavaScript conçues pour la manipulation de données, la programmation fonctionnelle, l'optimisation des performances, l'analyse statistique et le traitement de chaînes. Il fournit un ensemble d'outils pour le clonage profond, le filtrage et la transformation d'objets et tableaux complexes. Le projet est structuré comme une série de modules sans dépendance, permettant aux utilitaires d'être utilisés indépendamment pour minimiser la taille du bundle. Il implémente des modèles de programmation fonctionnelle incluant le currying, le piping et l'application partielle, et fournit un contrôle d'exécution via la mémoïsation, le debouncing et le throttling. La bibliothèque couvre un large éventail de capacités, incluant la manipulation profonde d'objets, la génération de données combinatoires et des opérations mathématiques telles que la vérification de nombres premiers et le clamping numérique. Elle inclut également des outils statistiques pour calculer des métriques comme la variance et l'écart-type, ainsi que des utilitaires de traitement de texte pour la conversion de casse et l'interpolation de chaînes.

    Implements shallow assignment of properties from source objects into a target object.

    JavaScript
    Voir sur GitHub↗6,204
  • ldqk/masuit.toolsAvatar de ldqk

    ldqk/Masuit.Tools

    6,182Voir sur GitHub↗

    Masuit.Tools is a comprehensive static utility library for .NET and ASP.NET Core development. It provides a broad collection of reusable helper methods and infrastructure components that cover common programming tasks without requiring dependency injection or instance management. The library is organized as flat utility classes, making its functionality directly accessible from anywhere in a project. The toolkit distinguishes itself through a wide range of integrated capabilities that go beyond typical utility libraries. It includes a multithreaded range-request file downloader with pause and

    Copies non-null properties from several source objects into a single target object.

    C#datetimeencryptionexcel
    Voir sur GitHub↗6,182
  • piotrwitek/utility-typesAvatar de piotrwitek

    piotrwitek/utility-types

    5,759Voir sur GitHub↗

    Il s'agit d'une bibliothèque de types utilitaires TypeScript fournissant des alias de type avancés et des types mappés pour des transformations complexes d'objets et d'unions. Elle implémente des outils spécialisés pour créer des types nominaux marqués, extraire des métadonnées de type et effectuer des opérations d'ensemble sur des types d'union. Le projet se distingue par une boîte à outils pour les transformations d'objets récursives, permettant l'application de contraintes de propriété comme le statut en lecture seule ou optionnel à travers des structures profondément imbriquées. Il fournit également un système pour calculer les intersections, les différences et les compléments entre les types d'union pour simuler la logique d'ensemble mathématique. La bibliothèque couvre un large éventail de fonctionnalités du système de types, y compris le filtrage des propriétés d'objet, la comparaison de formes et l'extraction de constructeurs de classe et de types de résolution de promesse. Elle inclut en outre des utilitaires pour la validation de valeur, tels que la détection de valeurs falsy ou nullish et l'identification de types primitifs.

    Provides utilities for filtering specific properties from objects at the type level.

    TypeScriptmapped-typesstatic-typingtypescript
    Voir sur GitHub↗5,759
  • rtfeldman/seamless-immutableAvatar de rtfeldman

    rtfeldman/seamless-immutable

    5,339Voir sur GitHub↗

    Il s'agit d'une bibliothèque de données immuables JavaScript utilisée pour créer des objets et des tableaux qui empêchent la mutation directe. Elle sert de gestionnaire d'état immuable et de wrapper d'objet conçu pour assurer la cohérence des données en bloquant les modifications tout en restant compatible avec la syntaxe JavaScript standard. La bibliothèque fonctionne comme un convertisseur qui transforme les données mutables standards en structures gelées et peut les convertir en retour pour des modifications locales. Cela permet un workflow où les données sont basculées entre des versions immuables et mutables pour effectuer des éditions en masse avant de verrouiller à nouveau l'état. Le projet fournit des capacités pour la transformation de données imbriquées, incluant les mises à jour basées sur le chemin, la fusion profonde d'objets et l'interrogation de valeurs au sein de hiérarchies profondes. Il supporte également les transformations tableau-vers-objet, la suppression de propriétés via des prédicats et la capacité de détecter si une structure est immuable.

    Combines multiple objects into a single immutable structure with support for deep merge configurations.

    JavaScript
    Voir sur GitHub↗5,339
  • sodiray/radashAvatar de sodiray

    sodiray/radash

    4,845Voir sur GitHub↗

    Radash est une bibliothèque d'utilitaires fonctionnels TypeScript conçue pour la transformation de données, la validation et la gestion de workflow. Elle fournit une collection de fonctions d'aide typées pour manipuler les tableaux, les objets et les chaînes de caractères. Le projet propose une boîte à outils de workflow asynchrone pour gérer les promesses, les tentatives et les limites de concurrence, aux côtés d'une suite de validateurs booléens pour vérifier les types primitifs, les objets et les promesses. Il implémente également des patterns de programmation fonctionnelle tels que la composition de fonctions, l'application partielle et les patterns de réponse error-first. La bibliothèque couvre une large surface de capacités, incluant la gestion d'état d'objet avec clonage profond et fusion, des manipulations de tableaux complexes et le formatage de chaînes. Elle fournit en outre des outils pour l'optimisation de l'exécution, tels que le rate limiting et la mise en cache des résultats.

    Implements recursive merging to combine nested data structures by traversing child properties.

    TypeScriptfunctionshacktoberfestjavascript
    Voir sur GitHub↗4,845
  • amzn/style-dictionaryAvatar de amzn

    amzn/style-dictionary

    4,709Voir sur GitHub↗

    Style Dictionary est un générateur de styles multiplateforme et un système de build pour jetons de design (design tokens). Il convertit une source unique de variables de design en plusieurs formats de sortie et fichiers spécifiques à la plateforme pour maintenir une source de vérité cohérente à travers différentes interfaces. Le système fonctionne comme un orchestrateur de styles multi-format qui fusionne des sources de jetons modulaires et les transforme en fonction des exigences de la plateforme cible. Il utilise une interface de transformation scriptable pour modifier les valeurs et les noms des jetons, permettant l'automatisation des styles de design system pour les applications web, iOS et Android. Le processus de build est piloté par la configuration, utilisant un objet central pour mapper les ensembles de jetons aux règles de transformation et de sortie. Il emploie un mappage de représentation intermédiaire pour garder les jetons sources agnostiques de la plateforme cible finale, tout en utilisant des adaptateurs de format enfichables pour définir comment les jetons traités sont écrits vers des destinations spécifiques.

    Employs deep merging to combine multiple modular token source files into a single flattened style object.

    JavaScript
    Voir sur GitHub↗4,709
  • ngx-translate/coreAvatar de ngx-translate

    ngx-translate/core

    4,666Voir sur GitHub↗

    Ceci est un framework d'internationalisation pour les applications Angular. Il fournit un système pour gérer le texte multilingue en mappant des clés à des chaînes traduites, utilisant un gestionnaire de traduction JSON pour charger et fusionner des assets localisés via HTTP ou des sources locales. La bibliothèque inclut un sélecteur de langue runtime pour mettre à jour l'interface utilisateur instantanément sans recharger la page et un extracteur de clés pour identifier les chaînes traduisibles dans le code source. Le projet propose un formateur de messages ICU pour gérer les exigences linguistiques complexes telles que la pluralisation et le genre. Il se distingue par une architecture de chargement basée sur des plugins et des parseurs d'interpolation personnalisables, permettant aux développeurs de définir une logique personnalisée pour récupérer les données de traduction et formater les paramètres dynamiques. La bibliothèque couvre un large éventail de capacités de localisation, incluant la détection de la langue du navigateur, la configuration de la langue de secours et le suivi d'état réactif utilisant des signaux pour surveiller les changements de langue. Elle prend également en charge des stratégies de routage localisées pour les URLs spécifiques à une langue et fournit des outils pour la validation des clés de traduction et le mocking de services pour l'assurance qualité.

    Implements recursive merging of translation resources to support shared dictionaries and locale-specific overrides.

    TypeScript
    Voir sur GitHub↗4,666
  • ts-essentials/ts-essentialsAvatar de ts-essentials

    ts-essentials/ts-essentials

    4,068Voir sur GitHub↗

    ts-essentials is a comprehensive toolkit of utility types and libraries for TypeScript, providing advanced primitives for recursive structural transformations, runtime assertions, and type guards. It serves as a utility library for performing complex type-level programming to ensure stronger type safety and reduce boilerplate. The project distinguishes itself through a specialized set of tools for deep object manipulation, such as recursively applying read-only or optional modifiers across nested hierarchies. It also provides a dedicated set of strict type constraints to ensure data structure

    TypeScript-ts-tool modifies object keys or values by changing case, toggling optionality, or flattening types for better readability.

    TypeScriptessentialstoolboxtype-level-programming
    Voir sur GitHub↗4,068
  • senecajs/senecaAvatar de senecajs

    senecajs/seneca

    3,959Voir sur GitHub↗

    Seneca est un framework d'architecture pilotée par les messages et une boîte à outils de microservices pour Node.js. Il fonctionne comme un orchestrateur de tâches distribué et un routeur de messages basé sur des patterns, permettant aux développeurs de construire des systèmes de services découplés qui communiquent via un bus de messages. Le framework se distingue par un système de plugins modulaire qui organise la logique métier en modules réutilisables et configurables. Il prend en charge les extensions d'action dynamiques, permettant à de nouveaux gestionnaires d'envelopper ou de remplacer des patterns d'action existants pour injecter une logique personnalisée sans modifier le code original. Le système couvre un large éventail de capacités incluant la communication de services distribués, l'orchestration d'actions asynchrones et la gestion de données d'entité. Il fournit également des outils d'observabilité pour le traçage de patterns d'action, la visualisation de logs basée sur le web et des utilitaires d'assurance qualité pour le mocking de dépendances de services.

    Combines multiple configuration objects into one by recursively overwriting properties from right to left.

    JavaScript
    Voir sur GitHub↗3,959
  • google/schema-dtsAvatar de google

    google/schema-dts

    1,204Voir sur GitHub↗

    Schema-dts is a type-safe library providing TypeScript interfaces for modeling structured data and interconnected graph relationships. It serves as a framework for defining and enforcing strict property requirements for JSON-LD objects, ensuring that metadata generated for web applications and search engines adheres to established vocabulary standards. The project distinguishes itself by providing a comprehensive set of definitions for the Schema.org vocabulary, enabling developers to build complex, machine-readable data graphs with compile-time validation. It supports the composition of mult

    Merges multiple concrete data types into a single object definition to support entities that must serve several roles simultaneously within a graph.

    TypeScriptjson-ldknowledge-graphlinked-data
    Voir sur GitHub↗1,204
  1. Home
  2. Programming Languages & Runtimes
  3. Object Property Transformers

Explorer les sous-tags

  • Decorator-Driven Property TransformersApplies custom conversion logic, renaming, and filtering to object properties during serialization or deserialization using decorators. **Distinct from Object Property Transformers:** Distinct from Object Property Transformers: uses decorators to define transformation rules rather than general-purpose cloning or duplication processes.
  • List-to-DataTable ConvertersConverts a collection of objects into a DataTable with columns matching property names. **Distinct from Object Property Transformers:** Distinct from Object Property Transformers: focuses on converting lists to DataTables for data export, not general property transformation.
  • Object Merging1 sous-tagUtilities for combining multiple object structures into a single type with specific override rules. **Distinct from Object Property Transformers:** Distinct from Object Property Transformers by focusing on the merging of multiple objects rather than modifying properties of a single object.
  • Type Modifier UtilitiesUtilities for changing the modifiers of object properties, such as making them optional, required, or readonly. **Distinct from Object Property Transformers:** Focuses on TypeScript type-level property modifiers rather than the runtime cloning or filtering processes described in Object Property Transformers.