{"id":38362916,"url":"https://github.com/elvis-chuks/go-clean-arch","last_synced_at":"2026-01-17T03:21:16.862Z","repository":{"id":64886957,"uuid":"570283645","full_name":"elvis-chuks/go-clean-arch","owner":"elvis-chuks","description":"Clean arch implementation in Golang","archived":false,"fork":false,"pushed_at":"2022-11-24T20:07:02.000Z","size":26,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-06-20T06:22:04.497Z","etag":null,"topics":["backend","clean-arch","golang","golang-examples"],"latest_commit_sha":null,"homepage":"","language":"Go","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/elvis-chuks.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-11-24T19:36:37.000Z","updated_at":"2024-05-16T04:25:37.000Z","dependencies_parsed_at":"2022-12-17T13:48:13.403Z","dependency_job_id":null,"html_url":"https://github.com/elvis-chuks/go-clean-arch","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/elvis-chuks/go-clean-arch","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elvis-chuks%2Fgo-clean-arch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elvis-chuks%2Fgo-clean-arch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elvis-chuks%2Fgo-clean-arch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elvis-chuks%2Fgo-clean-arch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/elvis-chuks","download_url":"https://codeload.github.com/elvis-chuks/go-clean-arch/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elvis-chuks%2Fgo-clean-arch/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28492689,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-17T02:39:23.645Z","status":"ssl_error","status_checked_at":"2026-01-17T02:34:19.649Z","response_time":85,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["backend","clean-arch","golang","golang-examples"],"created_at":"2026-01-17T03:21:16.749Z","updated_at":"2026-01-17T03:21:16.842Z","avatar_url":"https://github.com/elvis-chuks.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Go Clean Arch\n\n## Description\n\nThis monorepo implements Clean Architecture in Go (Golang).\n\nRule of Clean Architecture by Uncle Bob\n* Independent of Frameworks. The architecture does not depend on the existence of some library of feature laden software. This allows us to use such frameworks as tools, rather than having to cram our system into their limited constraints.\n* Testable. The business rules can be tested without the UI, Database, Web Server, or any other external element.\n* Independent of Database. We can swap out Mongodb, for Rocksdb, Dynamodb, CouchDB, or something else. Our business rules are not bound to the database.\n\nMore [here](https://8thlight.com/blog/uncle-bob/2012/08/13/the-clean-architecture.html)\n\nThis repo has 4 layers\n* Domain (Models, entities)\n* Repository\n* Usecase\n* Delivery (controller/delivery)\n\n\u003cimg src=\"https://github.com/bxcodec/go-clean-arch/raw/master/clean-arch.png\"\u003e\n\nThe original explanation about this repos structure can be read from this medium's post : [https://medium.com/@imantumorang/golang-clean-archithecture-efd6d7c43047](https://medium.com/@imantumorang/golang-clean-archithecture-efd6d7c43047).\n\nIt may be different already, but the concept is still the same in application level","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Felvis-chuks%2Fgo-clean-arch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Felvis-chuks%2Fgo-clean-arch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Felvis-chuks%2Fgo-clean-arch/lists"}