17 dépôts
Patterns and tools for mapping domain entities to data transfer objects to decouple APIs from schemas.
Distinct from Object Mapping APIs: Candidates focus on ORM database mapping or binary mapping, not the specific DTO architectural pattern.
Explore 17 awesome GitHub repositories matching software engineering & architecture · Data Transfer Object Mapping. Refine with filters or upvote what's useful.
ABP is an opinionated architectural framework for building enterprise software solutions using .NET and ASP.NET Core. It serves as a structural toolkit for implementing domain-driven design and microservices patterns, providing a modular enterprise architecture where functionality is organized into independent, pluggable modules. The platform is specifically designed to support multi-tenant SaaS architectures, isolating data and configurations for multiple independent customers within a single application instance. It provides enterprise boilerplate infrastructure and pre-configured templates
Provides standardized DTO mapping to decouple the API contract from the underlying database schema.
COLA is a core architectural toolkit for Java applications designed around domain-driven design and a clean, object-oriented layered architecture. It provides a framework for managing project structures, implementing domain-driven entity modeling, and organizing enterprise application architecture to decouple business logic from technical dependencies. The project features a pluggable logic extension system that allows for the addition of new functionality through defined extension points without modifying the core codebase. It also includes a project bootstrapping toolkit and an integration
Implements a system for formatting data transfer objects to decouple API layers from internal domain schemas.
AutoMapper is a strongly typed object-to-object mapper for .NET. It provides utilities for copying data between different object representations using convention-based property matching to eliminate manual assignment code. The library automates the transformation of data models by matching source and destination properties based on shared names and types. It supports the conversion of internal domain models into data transfer objects, facilitating data movement between presentation, business, and data access layers. The system employs reflection-based type discovery and recursive object grap
Automates the mapping of domain entities to data transfer objects to decouple application layers.
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
Provides automated mapping between domain entities and data transfer objects to decouple APIs from internal schemas.
Oatpp is a high-performance C++ web framework and API development kit used for building REST APIs and web services. It functions as an asynchronous HTTP server that utilizes coroutines to handle thousands of simultaneous connections without blocking threads. The toolkit includes a native C++ object-relational mapping layer for executing SQL queries and transforming database results into data objects. It also provides a WebSocket communication library for establishing full-duplex channels to support real-time data streaming and live media. The framework covers a broad range of capabilities, i
Supports mapping internal business entities to specialized data transfer objects for network transmission.
Litestar is a high-performance Python ASGI web framework designed for building asynchronous APIs and web services. It functions as a type-safe toolkit that leverages Python type hints to provide automatic request validation and response serialization, while natively generating interactive API documentation based on the OpenAPI specification. The framework is distinguished by its integrated dependency injection system, which manages shared resources and resolves complex nested service chains directly within request handlers. It further organizes API development through class-based controllers
Transforms and filters data moving between external requests and internal data models using data transfer objects.
NSwag is an OpenAPI toolchain for .NET that provides a suite of generators for converting OpenAPI specifications and JSON schemas into clients, server stubs, and structured documentation. It enables the creation of type-safe client libraries and data transfer objects, as well as the generation of OpenAPI specifications by analyzing .NET controllers. The project supports contract-first API development by generating server controller stubs from specifications and offers dedicated TypeScript API integration to ensure type safety in frontend applications. It also provides tools for hosting intera
Maps API date and time values to native language date objects during the generation of data transfer objects.
Clean-Code-Notes est un guide d'étude sur le code propre et une collection de notes détaillées basées sur les standards de développement logiciel professionnels. Il sert de documentation pour les normes de codage et de référence pour écrire du code source maintenable. Le projet fournit des résumés techniques pour la conception orientée objet et les design patterns logiciels. Il inclut des directives pour organiser les classes et les interfaces afin de réduire le couplage, isoler les détails d'implémentation et implémenter des patterns architecturaux tels que l'injection de dépendances et l'abstraction d'interface. La ressource fonctionne également comme un guide d'implémentation pour le développement piloté par les tests (TDD), se concentrant sur la création de tests unitaires rapides, indépendants et répétables. De plus, elle couvre les normes pour les conventions de nommage, la gestion des erreurs et le formatage du code pour améliorer la lisibilité à long terme.
Implements data transfer objects to move raw information between system boundaries without adding logic.
Omnipay est une bibliothèque de passerelle de paiement PHP et un framework d'intégration qui abstrait plusieurs fournisseurs de services de paiement en une API unique et cohérente. Il fournit une interface standardisée pour gérer les cycles de vie des paiements, permettant aux applications d'exécuter des autorisations, des captures et des remboursements via divers services financiers sans réécrire le code pour chaque fournisseur. Le framework découple la logique d'application des SDK spécifiques aux fournisseurs en utilisant un modèle d'adaptateur et des objets de transfert de données. Cette architecture garantit que les réponses brutes de la passerelle et les requêtes HTTP sont converties en formes de données prévisibles, tandis qu'un commutateur d'environnement basé sur la configuration permet aux développeurs de basculer entre les endpoints d'API sandbox et live pour tester les flux de transactions. La bibliothèque couvre un large éventail de capacités de traitement des paiements, incluant la tokenisation de cartes de crédit pour la facturation récurrente et la validation des numéros de carte via l'algorithme de Luhn. Elle gère la coordination des cycles de vie des transactions, y compris la gestion des redirections hors site et le traitement des notifications de passerelle asynchrones via des webhooks. Une fonctionnalité supplémentaire inclut des outils pour personnaliser les charges utiles de requête avec des paramètres arbitraires et transmettre des données de ligne détaillées aux passerelles de paiement.
Maps raw gateway responses and HTTP requests into structured data transfer objects for predictable data shapes.
Mapster est un moteur de mapping objet-vers-objet .NET haute performance utilisé pour transformer des données entre différents modèles d'objets. Il fonctionne comme un outil de transfert de données typé et un outil de projection de requêtes LINQ pour déplacer des données entre la logique interne et les structures de données externes. Le moteur utilise des expressions de mapping compilées et du code machine pour réduire la surcharge lors de la conversion d'objets. Il permet spécifiquement de projeter des sources de données requêtables directement dans des types de destination pour optimiser la récupération en base de données. L'ensemble d'outils couvre la génération d'objets de transfert de données, la transformation de données immuables et la projection de résultats de requêtes. Il inclut des capacités pour mapper des collections immuables, préserver les références d'objets et injecter des paramètres d'exécution dans le processus de transformation.
Provides tools for mapping domain entities to data transfer objects to decouple internal logic from external schemas.
Util est un framework de développement complet pour .NET conçu pour implémenter des architectures en couches et le domain-driven design. Il fournit une boîte à outils de classes de base et d'outils pour construire des applications full stack, se concentrant spécifiquement sur la création de frameworks d'administration backend et d'interfaces de gestion. Le projet se distingue par un générateur de boilerplate qui produit les types et classes nécessaires pour standardiser les patterns architecturaux répétitifs. Il inclut également un orchestrateur de micro-frontend qui permet de diviser les grands modules frontend en projets indépendants pour un développement et un déploiement séparés. Le framework couvre un large éventail de domaines de capacité, incluant la gestion des identités et des accès avec contrôle basé sur les rôles, l'isolation des données multi-tenant et l'enregistrement automatique des dépendances. Il fournit en outre des utilitaires pour l'audit des changements de données, la localisation de contenu, l'intégration de stockage d'objets et la génération d'interfaces CRUD. Le système prend en charge la création d'interfaces d'administration en utilisant des composants UI pré-intégrés et le rendu côté serveur via Razor TagHelpers.
Provides automated configuration for mapping domain entities to data transfer objects (DTOs).
Ce projet est une bibliothèque de documents Open XML et un générateur utilisé pour créer et modifier par programmation des fichiers Microsoft Office. Il permet la production de documents Word, Excel et PowerPoint en manipulant la structure Open XML sous-jacente. La bibliothèque fournit des capacités pour le traitement de documents Open XML, incluant la modification automatisée de fichiers existants et la génération de rapports et de feuilles de calcul Office formatés pour une production côté serveur.
Maps XML namespaces and attributes to concrete C# types to prevent structural errors.
Mapperly est un générateur de code source C# utilisé pour le mappage objet-à-objet haute performance dans .NET. Il fonctionne comme une bibliothèque de mappage à la compilation qui produit le code de transformation nécessaire durant le processus de build, éliminant le besoin de réflexion à l'exécution lors de la conversion entre modèles de domaine et objets de transfert de données (DTO). L'outil se distingue par sa validation diagnostique typée et son application stricte du mappage, émettant des avertissements pour les propriétés non mappées au moment de la compilation. Il inclut des fonctionnalités spécialisées pour la gestion des références circulaires et le clonage profond afin de maintenir l'identité des objets et d'éviter les boucles infinies lors de transformations complexes. Le projet couvre un large éventail de tâches de transformation, y compris l'aplatissement de hiérarchies d'objets imbriquées, la conversion de divers types de collections et de spans, ainsi qu'un mappage complet des énumérations entre chaînes et types primitifs. Il prend également en charge l'intégration de bases de données via la projection de requêtes, traduisant les définitions de mappage en arbres d'expressions pour optimiser la récupération des champs depuis des sources requêtables. Les options de configuration permettent des fabriques d'objets personnalisées, des exclusions au niveau des membres et l'intégration d'une logique de mappage définie par l'utilisateur. Le code source généré peut être exporté vers un répertoire configurable pour inspection manuelle et contrôle de version.
Automates the conversion of data between internal domain models and data transfer objects.
This library is a PHP toolkit for managing OAuth 2.0 authentication flows and connecting applications to external service providers. It provides a standardized framework for handling token exchanges, managing authorization grants, and retrieving user profile information from diverse identity platforms. The project is distinguished by its inheritance-based provider pattern, which allows developers to build custom integration clients by extending base logic to support unique service workflows and non-standard API specifications. It employs interface-driven contracts to ensure consistent behavio
Maps heterogeneous API responses from various external services into a consistent internal structure for predictable application usage.
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
Constructs structured objects from input data to enforce type safety and consistent data shapes across application layers.
This library is a PHP tool for programmatically defining, building, and exporting structured data graphs. It provides a fluent, object-oriented interface that allows developers to construct complex, nested metadata structures that comply with standardized vocabulary requirements for search engine indexing. The library distinguishes itself through its support for multi-typed entity modeling, which enables the combination of several classification categories into a single, unified entity. It also features a graph-based modeling system that facilitates the linking and cross-referencing of relate
Ensures schema vocabulary compliance through type-safe property mapping and enumerated constants.
This project serves as a comprehensive guide and collection of architectural patterns for implementing domain-driven design within Java enterprise applications. It focuses on structuring persistence layers to ensure data integrity, maintainability, and clear domain boundaries when working with object-relational mapping. The repository distinguishes itself by demonstrating how to encapsulate business logic and state transitions directly within entities, moving away from simple data containers toward rich domain models. It provides practical examples for managing complex entity relationships, i
Converts incoming request data into domain entities using dedicated mapping methods to decouple layers.