{"id":16688988,"url":"https://github.com/roll-w/web-common-starter","last_synced_at":"2025-12-26T20:34:38.552Z","repository":{"id":183392181,"uuid":"667854430","full_name":"roll-w/web-common-starter","owner":"roll-w","description":"A utility library for web development in Spring Boot.","archived":false,"fork":false,"pushed_at":"2025-02-08T14:03:56.000Z","size":111,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-08T14:29:16.989Z","etag":null,"topics":["java","java-17","java-library","spring-boot","spring-boot-3","spring-boot-starter"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/roll-w.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":"2023-07-18T13:00:07.000Z","updated_at":"2025-02-08T14:03:59.000Z","dependencies_parsed_at":"2023-07-24T09:37:09.354Z","dependency_job_id":"f6298016-8766-4c81-846f-f4ba59b30828","html_url":"https://github.com/roll-w/web-common-starter","commit_stats":null,"previous_names":["roll-w/web-common-starter"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roll-w%2Fweb-common-starter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roll-w%2Fweb-common-starter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roll-w%2Fweb-common-starter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/roll-w%2Fweb-common-starter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/roll-w","download_url":"https://codeload.github.com/roll-w/web-common-starter/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243461587,"owners_count":20294773,"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":["java","java-17","java-library","spring-boot","spring-boot-3","spring-boot-starter"],"created_at":"2024-10-12T15:46:00.209Z","updated_at":"2025-12-26T20:34:38.544Z","avatar_url":"https://github.com/roll-w.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Web Common Starter\n\nWeb Common library provides a set of common interfaces and implementations for \nweb development under the Spring Boot framework. \n\n## Requirements\n\n- Java 17 or higher\n\nBuilt with Spring Boot 3.\n\n## Usage\n\nRun `mvn install` to install the library to your local repository.\n\nAdd the dependency to your project:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003etech.rollw.common\u003c/groupId\u003e\n    \u003cartifactId\u003eweb-common-spring-boot-starter\u003c/artifactId\u003e\n    \u003cversion\u003e0.3.0\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n## How to use\n\nThis library provides some common interfaces and implementations for web development:\n\n### Base\n\n- `ErrorCode`: An interface for error codes, you can implement it to define your own error codes.\n- `BusinessException`: An exception that contains an error code.\n- `HttpResponseBody`: A wrapper for HTTP response body, it contains the error code and the data.\n- `HttpResponseEntity`: An extension of `ResponseEntity` that contains `HttpResponseBody` as the body.\n\n### Web System\n\nIn the `tech.rollw.common.web.system` package, provides interfaces to help you manage \nthe \"system resources\" in your project.\n\n- `SystemResource`: A `SystemResource` represents a resource in your application, \nsuch as a user, a file, a blog post and so on.\n  Typically associated with an entity in your database.\n- `SystemResourceKind`: Represents which kind of the `SystemResource`, you can implement\nit to define your own kinds.\n- `SystemResourceFactory`: The `SystemResourceFactory` is used to create `SystemResource` instances\nby the given ID and the type of the resource.\n  To achieve this, you need to implement the `SystemResourceProvider` interface to handle the creation.\n\n\n## License\n\n```text\nCopyright (C) 2023 RollW\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froll-w%2Fweb-common-starter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Froll-w%2Fweb-common-starter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Froll-w%2Fweb-common-starter/lists"}