{"id":17817881,"url":"https://github.com/0xtheprodev/spring-clean-example","last_synced_at":"2025-04-02T09:14:21.063Z","repository":{"id":136028320,"uuid":"510053852","full_name":"0xTheProDev/spring-clean-example","owner":"0xTheProDev","description":"Clean Architecture Example with Spring Framework (Java)","archived":false,"fork":false,"pushed_at":"2022-12-13T10:59:00.000Z","size":105,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-02-08T00:24:22.399Z","etag":null,"topics":["clean-architecture","graphql","hexagonal-architecture","hibernet","java","java18","maven","openapi","openapi3","repository-pattern","rest-api","spring","spring-boot"],"latest_commit_sha":null,"homepage":"","language":"Java","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/0xTheProDev.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-07-03T14:57:09.000Z","updated_at":"2025-01-14T02:26:55.000Z","dependencies_parsed_at":null,"dependency_job_id":"db00e2fe-53d7-4c01-839b-8cb6002b3006","html_url":"https://github.com/0xTheProDev/spring-clean-example","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xTheProDev%2Fspring-clean-example","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xTheProDev%2Fspring-clean-example/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xTheProDev%2Fspring-clean-example/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0xTheProDev%2Fspring-clean-example/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/0xTheProDev","download_url":"https://codeload.github.com/0xTheProDev/spring-clean-example/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246785464,"owners_count":20833496,"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","graphql","hexagonal-architecture","hibernet","java","java18","maven","openapi","openapi3","repository-pattern","rest-api","spring","spring-boot"],"created_at":"2024-10-27T16:46:34.409Z","updated_at":"2025-04-02T09:14:21.040Z","avatar_url":"https://github.com/0xTheProDev.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# spring-clean-example\n\n[![Java](https://img.shields.io/badge/java-%23ED8B00.svg?style=for-the-badge\u0026logo=java\u0026logoColor=white)](https://www.java.com/)\n[![Spring](https://img.shields.io/badge/spring-%236DB33F.svg?style=for-the-badge\u0026logo=spring\u0026logoColor=white)](https://spring.io/)\n[![Apache Tomcat](https://img.shields.io/badge/apache%20tomcat-%23F8DC75.svg?style=for-the-badge\u0026logo=apache-tomcat\u0026logoColor=black)](https://tomcat.apache.org/)\n[![OpenAPI](https://img.shields.io/badge/openapi-6BA539?style=for-the-badge\u0026logo=openapi-initiative\u0026logoColor=fff)](https://www.openapis.org/)\n[![GraphQL](https://img.shields.io/badge/-GraphQL-E10098?style=for-the-badge\u0026logo=graphql\u0026logoColor=white)](https://graphql.org/)\n[![Open Issues](https://img.shields.io/github/issues-raw/0xTheProDev/spring-clean-example?style=for-the-badge)](https://github.com/0xTheProDev/spring-clean-example/issues)\n[![Closed Issues](https://img.shields.io/github/issues-closed-raw/0xTheProDev/spring-clean-example?style=for-the-badge)](https://github.com/0xTheProDev/spring-clean-example/issues?q=is%3Aissue+is%3Aclosed)\n[![Open Pulls](https://img.shields.io/github/issues-pr-raw/0xTheProDev/spring-clean-example?style=for-the-badge)](https://github.com/0xTheProDev/spring-clean-example/pulls)\n[![Closed Pulls](https://img.shields.io/github/issues-pr-closed-raw/0xTheProDev/spring-clean-example?style=for-the-badge)](https://github.com/0xTheProDev/spring-clean-example/pulls?q=is%3Apr+is%3Aclosed)\n[![Contributors](https://img.shields.io/github/contributors/0xTheProDev/spring-clean-example?style=for-the-badge)](https://github.com/0xTheProDev/spring-clean-example/graphs/contributors)\n[![Activity](https://img.shields.io/github/last-commit/0xTheProDev/spring-clean-example?style=for-the-badge\u0026label=most%20recent%20activity)](https://github.com/0xTheProDev/spring-clean-example/pulse)\n\n## Description\n\n_Example Application Interface using Spring framework in Java_\n\nThis example showcases Repository Pattern in Hexagonal Architecture _(also known as Clean Architecture)_. Here we have two Entities - Books and Authors, whose relationships have been exploited to create CRUD endpoint in REST under OpenAPI standard.\n\n## Installation\n\n- Run the application using [Maven](https://maven.apache.org/):\n\n  ```sh\n  $ ./mvnw spring-boot:run\n  ```\n\n- For Windows users:\n\n  ```powershell\n  $ mvnw spring-boot:run\n  ```\n\n## Testing\n\n- Run test suite along with Coverage reporting:\n\n  ```sh\n  $ ./mvnw jacoco:prepare-agent test install jacoco:report\n  ```\n\n  or for Windows\n\n  ```powershell\n  $ mvnw jacoco:prepare-agent test install jacoco:report\n  ```\n\n## Swagger UI\n\n- Open Swagger UI at `localhost:8080/swagger-ui` after running the application.\n\n## License\n\n\u0026copy; MIT License\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F0xtheprodev%2Fspring-clean-example","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F0xtheprodev%2Fspring-clean-example","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F0xtheprodev%2Fspring-clean-example/lists"}