{"id":18592917,"url":"https://github.com/litestar-org/dtos","last_synced_at":"2025-04-10T16:30:35.304Z","repository":{"id":229386405,"uuid":"776312217","full_name":"litestar-org/dtos","owner":"litestar-org","description":"Domain modelling at the edge.","archived":false,"fork":false,"pushed_at":"2024-11-26T22:43:24.000Z","size":1180,"stargazers_count":13,"open_issues_count":1,"forks_count":1,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-03-24T23:51:25.884Z","etag":null,"topics":["codegen","dto-generator","dto-pattern","dtos","litestar","litestar-org","modelling"],"latest_commit_sha":null,"homepage":"http://docs.dtos.litestar.dev/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/litestar-org.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.rst","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["litestar-org"],"open_collective":"litestar","polar":"litestar-org"}},"created_at":"2024-03-23T06:37:33.000Z","updated_at":"2025-01-27T09:08:24.000Z","dependencies_parsed_at":"2024-04-26T22:24:28.504Z","dependency_job_id":"b4ddd6eb-58f5-4720-93bf-6e221c88555f","html_url":"https://github.com/litestar-org/dtos","commit_stats":null,"previous_names":["jolt-org/dtos","litestar-org/dtos"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/litestar-org%2Fdtos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/litestar-org%2Fdtos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/litestar-org%2Fdtos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/litestar-org%2Fdtos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/litestar-org","download_url":"https://codeload.github.com/litestar-org/dtos/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248252691,"owners_count":21072699,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["codegen","dto-generator","dto-pattern","dtos","litestar","litestar-org","modelling"],"created_at":"2024-11-07T01:10:37.328Z","updated_at":"2025-04-10T16:30:34.894Z","avatar_url":"https://github.com/litestar-org.png","language":"Python","funding_links":["https://github.com/sponsors/litestar-org","https://opencollective.com/litestar","https://polar.sh/litestar-org"],"categories":[],"sub_categories":[],"readme":"\u003c!-- markdownlint-disable --\u003e\n\u003cp align=\"center\"\u003e\n  \u003c!-- github-banner-start --\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/litestar-org/branding/main/assets/Branding%20-%20SVG%20-%20Transparent/DTOs%20-%20Banner%20-%20Inline%20-%20Light.svg#gh-light-mode-only\" alt=\"Litestar Logo - Light\" width=\"100%\" height=\"auto\" /\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/litestar-org/branding/main/assets/Branding%20-%20SVG%20-%20Transparent/DTOs%20-%20Banner%20-%20Inline%20-%20Dark.svg#gh-dark-mode-only\" alt=\"Litestar Logo - Dark\" width=\"100%\" height=\"auto\" /\u003e\n  \u003c!-- github-banner-end --\u003e\n\u003c/p\u003e\n\u003c!-- markdownlint-restore --\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n| Project   |     | Status                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |\n|-----------|:----|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| CI/CD     |     | [![Latest Release](https://github.com/litestar-org/dtos/actions/workflows/publish.yml/badge.svg)](https://github.com/litestar-org/dtos/actions/workflows/publish.yml) [![ci](https://github.com/litestar-org/dtos/actions/workflows/ci.yml/badge.svg)](https://github.com/litestar-org/dtos/actions/workflows/ci.yml) [![Documentation Building](https://github.com/litestar-org/dtos/actions/workflows/docs.yml/badge.svg?branch=main)](https://github.com/litestar-org/dtos/actions/workflows/docs.yml)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |\n| Quality   |     | [![Coverage](https://codecov.io/github/litestar-org/dtos/graph/badge.svg?token=vKez4Pycrc)](https://codecov.io/github/litestar-org/dtos) [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_dtos\u0026metric=alert_status)](https://sonarcloud.io/summary/new_code?id=litestar-org_dtos) [![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_dtos\u0026metric=sqale_rating)](https://sonarcloud.io/summary/new_code?id=litestar-org_dtos) [![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_dtos\u0026metric=reliability_rating)](https://sonarcloud.io/summary/new_code?id=litestar-org_dtos) [![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=litestar-org_dtos\u0026metric=security_rating)](https://sonarcloud.io/summary/new_code?id=litestar-org_dtos)                                                                                                                                                                                                                 |\n| Package   |     | [![PyPI - Version](https://img.shields.io/pypi/v/dtos?labelColor=202235\u0026color=edb641\u0026logo=python\u0026logoColor=edb641)](https://badge.fury.io/py/litestar) ![PyPI - Support Python Versions](https://img.shields.io/pypi/pyversions/dtos?labelColor=202235\u0026color=edb641\u0026logo=python\u0026logoColor=edb641) ![DTOs PyPI - Downloads](https://img.shields.io/pypi/dm/dtos?logo=python\u0026label=package%20downloads\u0026labelColor=202235\u0026color=edb641\u0026logoColor=edb641)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |\n| Community |     | [![Reddit](https://img.shields.io/reddit/subreddit-subscribers/litestarapi?label=r%2FLitestar\u0026logo=reddit\u0026labelColor=202235\u0026color=edb641\u0026logoColor=edb641)](https://reddit.com/r/litestarapi) [![Discord](https://img.shields.io/discord/919193495116337154?labelColor=202235\u0026color=edb641\u0026label=chat%20on%20discord\u0026logo=discord\u0026logoColor=edb641)](https://discord.gg/litestar) [![Matrix](https://img.shields.io/badge/chat%20on%20Matrix-bridged-202235?labelColor=202235\u0026color=edb641\u0026logo=matrix\u0026logoColor=edb641)](https://matrix.to/#/#litestar:matrix.org) [![Medium](https://img.shields.io/badge/Medium-202235?labelColor=202235\u0026color=edb641\u0026logo=medium\u0026logoColor=edb641)](https://blog.litestar.dev) [![Twitter](https://img.shields.io/twitter/follow/LitestarAPI?labelColor=202235\u0026color=edb641\u0026logo=twitter\u0026logoColor=edb641\u0026style=flat)](https://twitter.com/LitestarAPI) [![Blog](https://img.shields.io/badge/Blog-litestar.dev-202235?logo=blogger\u0026labelColor=202235\u0026color=edb641\u0026logoColor=edb641)](https://blog.litestar.dev)                                                                    |\n| Meta      |     | [![Litestar Project](https://img.shields.io/badge/Litestar%20Org-%E2%AD%90%20Advanced%20Alchemy-202235.svg?logo=python\u0026labelColor=202235\u0026color=edb641\u0026logoColor=edb641)](https://github.com/litestar-org/dtos) [![types - Mypy](https://img.shields.io/badge/types-Mypy-202235.svg?logo=python\u0026labelColor=202235\u0026color=edb641\u0026logoColor=edb641)](https://github.com/python/mypy) [![License - MIT](https://img.shields.io/badge/license-MIT-202235.svg?logo=python\u0026labelColor=202235\u0026color=edb641\u0026logoColor=edb641)](https://spdx.org/licenses/) [![Litestar Sponsors](https://img.shields.io/badge/Sponsor-%E2%9D%A4-%23edb641.svg?\u0026logo=github\u0026logoColor=edb641\u0026labelColor=202235)](https://github.com/sponsors/litestar-org) [![linting - Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v2.json\u0026labelColor=202235)](https://github.com/astral-sh/ruff) [![code style - Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/format.json\u0026labelColor=202235)](https://github.com/psf/black) |\n\n\u003c/div\u003e\n\n### Model your domain at the edge.\n\n\u003e [!WARNING]\n\u003e **Pre-Release Alpha Stage**\n\u003e\n\u003e Please note that DTOS is currently in a pre-release alpha stage of development. This means the library is still under\n\u003e active development, and its API is subject to change. We encourage developers to experiment with DTOS and provide\n\u003e feedback, but we recommend against using it in production environments until a stable release is available.`\n\n## About\n\nThe `dtos` library bridges the gap between complex domain models and their practical usage across network boundaries.\nIt is designed for Python developers seeking to streamline the process of configuring different representations of\ndomain models, such as dataclasses and SQLAlchemy models, for network edge parsing and validation. Whether you're\nlooking to accept a subset, superset, or a completely customized set of fields defined on your model at the network\nedge, `dtos` offers a flexible and powerful solution.\n\n## Purpose\n\n``dtos`` is built with the vision of enhancing domain modeling at the network edge, offering developers unparalleled control\nover their data's shape and structure during transfer. The library facilitates:\n\n- **Customizable Data Representations**: Tailor your data to meet the exact needs of your network interactions, enabling\na more efficient and precise data exchange.\n- **Edge Parsing and Validation**: Ensure your data integrity by defining explicit parsing and validation rules that\nmatch your application's requirements.\n- **Seamless Integration**: Designed to work effortlessly with popular Python data modeling and ORM tools, ``dtos``\nintegrates into your existing workflow with minimal overhead.\n\n## Contributing\n\nAll [Litestar Organization][litestar-org] projects will always be a community-centered, available for contributions of any size.\n\nBefore contributing, please review the [contribution guide][contributing].\n\nIf you have any questions, reach out to us on [Discord][discord], our org-wide [GitHub discussions][litestar-discussions] page,\nor the [project-specific GitHub discussions page][project-discussions].\n\n\u003chr\u003e\n\n\u003c!-- markdownlint-disable --\u003e\n\u003cp align=\"center\"\u003e\n  \u003c!-- github-banner-start --\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/litestar-org/branding/main/assets/Branding%20-%20SVG%20-%20Transparent/Organization%20Project%20-%20Banner%20-%20Inline%20-%20Dark.svg\" alt=\"Litestar Logo - Light\" width=\"40%\" height=\"auto\" /\u003e\n  \u003cbr\u003eAn official \u003ca href=\"https://github.com/litestar-org\"\u003eLitestar Organization\u003c/a\u003e Project\n  \u003c!-- github-banner-end --\u003e\n\u003c/p\u003e\n\n[litestar-org]: https://github.com/litestar-org\n[contributing]: https://docs.dtos.litestar.dev/latest/contribution-guide.html\n[discord]: https://discord.gg/litestar\n[litestar-discussions]: https://github.com/orgs/litestar-org/discussions\n[project-discussions]: https://github.com/litestar-org/dtos/discussions\n[project-docs]: https://docs.dtos.litestar.dev\n[install-guide]: https://docs.dtos.litestar.dev/latest/#installation\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flitestar-org%2Fdtos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flitestar-org%2Fdtos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flitestar-org%2Fdtos/lists"}