3 Repos
Utilities for applying functions to transform object keys into a new object structure.
Distinct from Object Mapping: Candidates focus on reflection-based mapping or serialization, not functional key transformation.
Explore 3 awesome GitHub repositories matching data & databases · Key Transformers. Refine with filters or upvote what's useful.
Active Model Serializers ist ein Ruby-on-Rails-JSON-Serializer, der verwendet wird, um Modellobjekte und Assoziationen in strukturierte JSON-Antworten für APIs umzuwandeln. Er fungiert als Modell-zu-JSON-Mapper und Response-Formatter, der interne Datenbankschemata von externen API-Verträgen entkoppelt. Das Projekt nutzt ein pluggbares Adapter-Muster, um serialisierte Daten gemäß spezifischen Standards, wie der JSON-API-Spezifikation, zu organisieren. Es bietet einen Mechanismus, um interne Attribute auf benutzerdefinierte JSON-Schlüssel abzubilden, und implementiert einen Serialisierungs-Scope, der Attribut- und Assoziationsfilterung basierend auf Autorisierungskontext und Benutzerberechtigungen ermöglicht. Das Toolset deckt Datentransformation durch die Verwendung virtueller Attribute und die Verwaltung assoziierter Daten via Sideloading oder ID-Embedding ab. Es enthält Funktionen für die Injektion von Response-Metadaten, fragmentbasiertes Caching von Ergebnissen und Performance-Instrumentierung zur Verfolgung von Serialisierungsmetriken.
Implements global and class-level formatting rules to convert attribute keys into specific casing styles.
Jbuilder ist eine JSON-Template-Engine und ein Builder für Ruby, der eine domänenspezifische Sprache (DSL) zur Generierung strukturierter JSON-Objekte bereitstellt. Er dient als View-Helper, um Daten mithilfe von Logik, Bedingungen und Schleifen in das JSON-Format zu transformieren. Das Projekt ermöglicht die Konstruktion komplexer Datenstrukturen durch die Verwendung von Partials und verschachtelten Objekten, um die Modularität zu wahren. Es enthält Funktionen für die Laufzeit-Key-Transformation, wodurch Attribut-Keys zwischen verschiedenen Namenskonventionen wie Snake Case und Camel Case konvertiert werden können. Das System unterstützt dynamische JSON-Strukturierung mit der Möglichkeit, Keys zur Laufzeit zu definieren und die Ausgabe von Null-Werten zu steuern. Es bietet zudem einen Mechanismus zum Caching gerenderter JSON-Fragmente, um wiederholte Verarbeitungsschritte zu reduzieren.
Provides utilities to convert attribute keys between casing styles like snake_case and camelCase during serialization.
Absinthe is a GraphQL server implementation and query engine for the Elixir ecosystem. It provides the fundamental toolkit for building GraphQL APIs, including a processing engine that parses, validates, and executes documents against a defined application schema. The project includes a batch resolver to optimize database performance by grouping field requests and a complexity guard to protect system resources by rejecting queries that exceed defined cost thresholds. It also features a schema adapter that translates internal Elixir naming conventions to external GraphQL casing for client comp
Includes utilities to convert field names between snake_case and camelCase for client compatibility.