{"id":21566775,"url":"https://github.com/eliostvs/python-clean-architecture-example","last_synced_at":"2025-08-30T23:38:30.142Z","repository":{"id":77870445,"uuid":"186324035","full_name":"eliostvs/python-clean-architecture-example","owner":"eliostvs","description":"Example of Clean Architecture using Python","archived":false,"fork":false,"pushed_at":"2021-05-13T16:21:55.000Z","size":156,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-24T12:13:59.050Z","etag":null,"topics":["clean-architecture","python3"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eliostvs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-05-13T01:18:32.000Z","updated_at":"2022-02-16T16:50:57.000Z","dependencies_parsed_at":"2023-08-25T02:16:56.857Z","dependency_job_id":null,"html_url":"https://github.com/eliostvs/python-clean-architecture-example","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eliostvs%2Fpython-clean-architecture-example","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eliostvs%2Fpython-clean-architecture-example/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eliostvs%2Fpython-clean-architecture-example/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eliostvs%2Fpython-clean-architecture-example/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eliostvs","download_url":"https://codeload.github.com/eliostvs/python-clean-architecture-example/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244162478,"owners_count":20408537,"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":["clean-architecture","python3"],"created_at":"2024-11-24T10:28:10.615Z","updated_at":"2025-03-18T05:27:33.674Z","avatar_url":"https://github.com/eliostvs.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Python Clean Architecture Example\n\nA customer search system example based on the clean architecture.\n\n## Usage\n\n## Developing\n\nYou will need [poetry](https://python-poetry.org/) installed.\n\nIn project root run:\n\n\u003e make setup\n\nTo run the tests run:\n\n\u003e make test\n\n## Architecture\n\nThe *clean architecture* approach was used in this project.\n\nIt contains two main submodules: **search** and **terminal**.\n\nThe **search** submodule contains the business rules that are essential for the application, that is, the domain entities and use cases.\n\nThe **terminal** submodule contains the presenter and the adapters, that is, the code in this layer interacts with the user and convert data from the format most convenient for the use cases and entities and then back from the use cases to the presenter.\n\n![c4 component diagram](http://www.plantuml.com/plantuml/png/RL9DRzim3BtxLt0vfS1QNtRQRNFHeK0612jw3XY9ZON8eY5HDOnX_trKv0J9EbzeF7wynqTzSi7uR0bwaJ5zRTk8qyF1IP_tEL4q78I2F1WUsj5Za3pu-oJMkttRVRdV5kZrvwOTC0b5XNOT3oE7qZDgRTE84q_GvIGyK8GNmcXwU9crVcYQBSN4OLseFiFgLSDAu-gkQJfbHXSexhvp3XRZlCRHQV8owWVn8UBOEtCxTNK7lnlGxo9bRVofS_CCpxfFV4D3XQVppXpXAU904yTZWRQHtvsb1D8J55a99dK342QSGHXIfGeQA0cOHKrIpRUSBenPTE8tYwFKlRQpLR-SEN5pUASebSYY8Bn57YwqS6elX0NHMwWLAK7CNhMDM2JB_rZFUggRq64wRVgKWn77eVmlPfMv7xQe8X0CSxGke10aZkB20VRpgULS2iv-83yGw_ohkpow91XCqU5DzYWS_rLppYoMswKZgG5mT9xhdh0dcOW2oCHNujGATa6A3N-QvXVvvINLUwi19QFmRbEVmFacLvd7chdrxQhjWjVbbkHV)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feliostvs%2Fpython-clean-architecture-example","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feliostvs%2Fpython-clean-architecture-example","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feliostvs%2Fpython-clean-architecture-example/lists"}