{"id":21571099,"url":"https://github.com/treblle/springboot-api-boilerplate","last_synced_at":"2025-03-18T06:15:23.208Z","repository":{"id":129657634,"uuid":"541615538","full_name":"Treblle/springboot-api-boilerplate","owner":"Treblle","description":"An awesome boilerplate for your next Spring boot based API. Its only goal is to simply kick-start your API development and provide you with some of the best practices when building amazing and scalable REST APIs","archived":false,"fork":false,"pushed_at":"2022-10-06T21:16:54.000Z","size":26,"stargazers_count":1,"open_issues_count":1,"forks_count":2,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-01-24T12:45:46.182Z","etag":null,"topics":["api","api-monitoring","api-observability","backend","boilerplate","java","rest-api","restful-api","spring-boot","treblle"],"latest_commit_sha":null,"homepage":"https://www.treblle.com/","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/Treblle.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-09-26T13:59:55.000Z","updated_at":"2023-09-22T09:29:19.000Z","dependencies_parsed_at":"2023-08-29T16:46:08.354Z","dependency_job_id":null,"html_url":"https://github.com/Treblle/springboot-api-boilerplate","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/Treblle%2Fspringboot-api-boilerplate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Treblle%2Fspringboot-api-boilerplate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Treblle%2Fspringboot-api-boilerplate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Treblle%2Fspringboot-api-boilerplate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Treblle","download_url":"https://codeload.github.com/Treblle/springboot-api-boilerplate/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244166758,"owners_count":20409179,"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":["api","api-monitoring","api-observability","backend","boilerplate","java","rest-api","restful-api","spring-boot","treblle"],"created_at":"2024-11-24T11:14:52.319Z","updated_at":"2025-03-18T06:15:23.203Z","avatar_url":"https://github.com/Treblle.png","language":"Java","readme":"# Spring Boot API boilerplate\n\n[![MIT Licence](https://img.shields.io/npm/l/treblle)](LICENSE.md)\n\nAn awesome boilerplate for your next Spring Boot based API. It's only goal is to simply **kick-start your API development** and provide you with some of the best practices when building amazing and scalable REST APIs 🔥\n\n## Features\n\n### REST API Best Practices\nWe baked in all the best REST API practices in terms of structuring your API, naming conventions, HTTP methods, responses and optimizations\n\t\n### Concrete examples\nWe all like to learn by examples and that's why  the boilerplate comes with a concrete example that include everything from folder structure, repositories, services and controllers\n\n### OpenAPI/Swagger support\nThe API documentation is generated automatically on application start using the awesome SpringDoc OpenAPI library\n\n### Entities and migrations\nWe built two tables Users and Posts and defined everything you might need on a database and entity level. Schema migrations are handled by Liquibase. \n\n### Spawn a new user quickly\nNew users can be added quickly by using the public endpoint:\n\n    POST /api/v1/users\n\n### Real world authentication\nWe provide examples of using both HTTP Basic and JWT Bearer authentication\n\n### Treblle built-in\nWe added an awesome Spring Boot dependency called Treblle. Out of the box Treblle gives you: real-time API monitoring, automatically generated and updated documentation, error tracking and logging, API analytics, quality scoring and much more. To get started with Treblle visit [treblle.com](https://treblle.com) for more information.\n\nTreblle makes it super easy to understand what’s going on with your APIs and the apps that use them. Just by adding Treblle to your API out of the box, you get:\n\n- Real-time API monitoring and logging\n- Auto-generated API docs with OAS support\n- API analytics\n- Quality scoring\n- One-click testing\n- API management on the go\n- and more...\n\n## Requirements\n\n- Spring Boot 2.7.4\n- Java 8+\n\n## Getting started\n\n1. Configure your Treblle API key and Project ID in the **application.properties** file\n2. Run the following command in the terminal\n   \n        ./mvnw spring-boot:run\n\n3. Access the Swagger UI at [http://localhost:8080/swagger-ui/index.html#/](http://localhost:8080/swagger-ui/index.html#/)\n   \n4. Create a user by calling (check the Swagger UI)\n   \n        POST /api/v1/users\n\n5. Authenticate using HTTP Basic using the users email and password by calling \n\n        POST /api/v1/iam/authenticate\n\n6. Use the resulting JWT token to access all other resources\n\n\n## Thank you\n\nThe boilerplate was built by [IvoMajic](https://github.com/IvoMajic) and sponsored by [Treblle](https://treblle.com). We would love to have you as our contributor so please feel free to make pull requests and help us make the best API boilerplate on Github 💪🏻\n\n## The 10 REST Commandments E-book\n\n![# The 10 REST Commandments](https://treblle-assets.s3.amazonaws.com/api-book.jpg)Grab a free copy of The 10 REST Commandments e-book and learn how to build great REST APIs that scale in any language 👉 [https://treblle.com/ebooks/the-10-rest-commandments](https://treblle.com/ebooks/the-10-rest-commandments) \n\n\n## Support\n\nIf you have problems of any kind feel free to reach out via \u003chttps://treblle.com\u003e or email vedran@treblle.com, and we'll\ndo our best to help you out.\n\n## License\n\nCopyright 2022, Treblle Limited. Licensed under the MIT license:\nhttp://www.opensource.org/licenses/mit-license.php\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftreblle%2Fspringboot-api-boilerplate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftreblle%2Fspringboot-api-boilerplate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftreblle%2Fspringboot-api-boilerplate/lists"}