{"repo":"err0r500/go-realworld-clean","free":true,"listed":false,"github":"https://github.com/err0r500/go-realworld-clean","clone":"git clone https://github.com/err0r500/go-realworld-clean.git","description":"a clean architecture implementation of the realworldapp (needs rework)","language":"Go","stars":531,"topics":["realworld-backend","golang","clean-architecture","clean-code","go","example-project","hexagonal-architecture","ports-and-adapters","testing","realworld"],"license":"MIT","category":"dev-tools","readme_excerpt":"\\# start shameless plug YOLO Corp is a developer challenge platform where you design backends your way through multi-episode projects with persistent data, drifting requirements, and a corporate fever-dream storyline. Think LeetCode × real-world production × text adventure × The Office. \\# end shameless plug --- Golang clean-architecture codebase containing real world examples (CRUD, auth, advanced patterns, etc) that adheres to the RealWorld spec and API. Demo&nbsp;&nbsp;&nbsp;&nbsp;RealWorld This codebase was created to demonstrate a fully fledged fullstack application built with go including CRUD operations, authentication, routing, pagination, and more. We've gone to great lengths to adhere to the go community styleguides & best practices. For more information on how to this works with other frontends/backends, head over to the RealWorld repo. How it works Clean Architecture : Layers ( from the most abstract to the most concrete ) : - domain : abstract data structures - uc : \"use cases\", the pure business logic - implem : implementations of the interfaces used in the business logic (uc layer) - infra : setup/configuration of the implementation Golden rules : - a layer never imports something from a layer below it - 3rd-party libraries are forbidden in the 2 topmost layers Benefits : - flexibility - testability Getting started Build the app Run the app Run the integration tests Start the server with an existing user In another terminal, run the tests against the API Additi","default_branch":null,"files":null,"tree":[],"storefront":"/r/err0r500","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/err0r500/go-realworld-clean/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}