{"id":25831165,"url":"https://github.com/edsonwade/sb-restapi","last_synced_at":"2026-02-19T00:02:49.681Z","repository":{"id":46756462,"uuid":"512201673","full_name":"edsonwade/sb-restapi","owner":"edsonwade","description":"This project combines the power of Spring Boot with modern technologies to build robust, secure, and highly performant RESTful APIs. Explore our implementations to learn about database management, authentication, Dockerization, CI/CD, testing, and more.","archived":false,"fork":false,"pushed_at":"2025-02-07T20:22:38.000Z","size":168,"stargazers_count":2,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-18T13:52:58.124Z","etag":null,"topics":["docker-compose","flyway-migrations","github-actions","grafana","hateoas","integration-testing","java","jpa-hibernate","junit5","maven","mysql","openapi","pipelines","prometheus","rest-api","spring-boot","spring-security-jwt","swagger","testcontainers"],"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/edsonwade.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-09T14:08:50.000Z","updated_at":"2025-02-07T20:22:41.000Z","dependencies_parsed_at":"2024-11-12T13:20:08.379Z","dependency_job_id":"cbcf6aac-9c26-47c1-87b4-656317d919c5","html_url":"https://github.com/edsonwade/sb-restapi","commit_stats":null,"previous_names":["edsonwade/spring-rest-api-project-2023","edsonwade/sb-restapi"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/edsonwade/sb-restapi","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edsonwade%2Fsb-restapi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edsonwade%2Fsb-restapi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edsonwade%2Fsb-restapi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edsonwade%2Fsb-restapi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/edsonwade","download_url":"https://codeload.github.com/edsonwade/sb-restapi/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edsonwade%2Fsb-restapi/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29599338,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-18T22:25:43.180Z","status":"ssl_error","status_checked_at":"2026-02-18T22:25:42.766Z","response_time":162,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5: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":["docker-compose","flyway-migrations","github-actions","grafana","hateoas","integration-testing","java","jpa-hibernate","junit5","maven","mysql","openapi","pipelines","prometheus","rest-api","spring-boot","spring-security-jwt","swagger","testcontainers"],"created_at":"2025-02-28T20:32:51.753Z","updated_at":"2026-02-19T00:02:49.660Z","avatar_url":"https://github.com/edsonwade.png","language":"Java","readme":"## Rest APIs Spring Boot\n\nWelcome to the RestfulAPIs-With-Spring-Boot-2023 project! This repository serves as a comprehensive guide and implementation of Spring Boot from scratch in 2022.\n\n## Description\n\nThis project combines the power of Spring Boot with modern technologies to build robust, secure, and highly performant RESTful APIs. Explore our implementations to learn about database management, authentication, Dockerization, CI/CD, testing, and more.\n\n## Technologies\n\nWe leverage several cutting-edge technologies to build this project:\n\n- ![Java](https://img.shields.io/badge/Java-ED8B00?style=for-the-badge\u0026logo=java\u0026logoColor=white) - The backbone of our application.\n- ![Spring](https://img.shields.io/badge/Spring-6DB33F?style=for-the-badge\u0026logo=spring\u0026logoColor=white) - Empowering our application with Spring Boot.\n- ![MySQL](https://img.shields.io/badge/MySQL-00000F?style=for-the-badge\u0026logo=mysql\u0026logoColor=white) - Our relational database choice.\n- ![MongoDB](https://img.shields.io/badge/MongoDB-4EA94B?style=for-the-badge\u0026logo=mongodb\u0026logoColor=white) - Our NoSQL database choice.\n\n## Implementations\n\nWe've integrated various features and technologies into our project for a robust and modern application:\n\n1. **Flyway Migration**: Seamlessly manage database migrations.\n2. **Content Negotiation**: Support different data formats for APIs.\n3. **Hateoas**: Implement Hypermedia as the engine of Application State.\n4. **Swagger (OpenAPI)**: Generate interactive API documentation.\n5. **CORS (Cross-Origin Resource Sharing)**: Handle cross-origin requests.\n6. **Spring Security with JWT Authentication**: Secure your application with JWT-based authentication.\n7. **Docker, Prometheus, Grafana**: Containerize, monitor, and visualize your application.\n8. **Pipeline CI/CD on AWS with GitHub Actions**: Automate your deployment process.\n9. **Rest Assured**: Perform API tests, integration tests, functional tests with Cucumber, and test with Testcontainers using JUnit 5.\n\n### Documentation and Resources\n\n- [Swagger Documentation](http://localhost:8080/swagger-ui/index.html) - Interactive API documentation.\n- [Documenting a Spring REST API following the OpenAPI specification](https://lankydan.dev/documenting-a-spring-rest-api-following-the-openapi-specification)\n- [Integration Testing with Testcontainers](https://www.testcontainers.org/) - More information on testing with Docker.\n- [Rest Assured](https://www.rest-assured.io) - Learn more about API testing.\n\n## Contributing\n- [Vanilson Muhongo](https://www.github.com/edsonwade)\n\n## License\n\nThis project is licensed under the [MIT License](LICENSE). You are free to use, modify, and distribute this software as per the terms of the license.\n\nIf you have any questions or need assistance, don't hesitate to reach out. Happy coding!\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fedsonwade%2Fsb-restapi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fedsonwade%2Fsb-restapi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fedsonwade%2Fsb-restapi/lists"}