{"id":23209000,"url":"https://github.com/ulisses22/dockerized-spring-api","last_synced_at":"2026-04-27T16:32:58.860Z","repository":{"id":268303363,"uuid":"903907536","full_name":"Ulisses22/dockerized-spring-api","owner":"Ulisses22","description":"This API is built with Spring Boot, secured with JWT authentication, uses PostgreSQL as its database, and is fully containerized with Docker Compose. It includes Swagger UI for easy exploration.","archived":false,"fork":false,"pushed_at":"2024-12-21T22:41:19.000Z","size":63,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-05T12:09:47.648Z","etag":null,"topics":["docker-compose","java","jpa","postgresql","spring-boot","swagger-ui"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Ulisses22.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2024-12-15T21:24:43.000Z","updated_at":"2024-12-21T22:41:22.000Z","dependencies_parsed_at":"2024-12-15T23:18:33.075Z","dependency_job_id":"16ea86db-a886-495e-86d6-c2e308670b82","html_url":"https://github.com/Ulisses22/dockerized-spring-api","commit_stats":null,"previous_names":["ulisses22/dockerized-spring-api"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ulisses22%2Fdockerized-spring-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ulisses22%2Fdockerized-spring-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ulisses22%2Fdockerized-spring-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ulisses22%2Fdockerized-spring-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Ulisses22","download_url":"https://codeload.github.com/Ulisses22/dockerized-spring-api/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247332611,"owners_count":20921853,"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":["docker-compose","java","jpa","postgresql","spring-boot","swagger-ui"],"created_at":"2024-12-18T18:13:34.285Z","updated_at":"2025-10-20T03:17:23.134Z","avatar_url":"https://github.com/Ulisses22.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🌟 Spring Boot API with JWT Auth and Swagger UI\n\nThis API is built using **Spring Boot**, integrates **JWT authentication**, and uses **PostgreSQL** as the database.\nThe API is fully containerized with **Docker Compose** and comes with pre-configured **Swagger UI** for easy API exploration.\n\n## 🚀 How to Run the Project\n## 1 Clone the Repository\n\n```bash\ngit clone https://github.com/Ulisses22/dockerized-spring-api.git\ncd spring-boot-api-jwt\n\n```\n## 2 Configure Environment Variables\n**application.properties** (you can use .env file to Dynamic configuration)\n\n```bash\nspring.datasource.username=postgres\nspring.datasource.password=root\n```\n\n**docker-compose.yml** (you can use .env file to Dynamic configuration)\n```bash\nPOSTGRES_USER: postgres\nPOSTGRES_PASSWORD: root\nSPRING_DATASOURCE_USERNAME: postgres\nSPRING_DATASOURCE_PASSWORD: root\n```\n\n## 3 Run\n\n```\ndocker-compose up --build     # Build and run containers\n```\n\n## Endpoints\n\n| Endpoint             | Method | Description              | Auth Required |\n|----------------------|--------|--------------------------|---------------|\n| `/api/auth/login`    | POST   | Log in and get JWT token | ❌            |\n| `/api/auth/register` | POST   | Register a new user      | ❌            |\n| `/api/auth/activate` | GET    | Activate a new user      | ❌            |\n| `/api/private`       | GET    | Private content          | ✅            |\n| `/api/public`        | GET    | Public content           | ❌            |\n\n## Swagger Documentation\nURL: http://localhost:8080/swagger-ui.html\n\n## ⚙️ Tech Stack\n\n- Backend: Spring Boot, Spring Security, JWT\n- Database: PostgreSQL\n- Containerization: Docker, Docker Compose\n- Documentation: Swagger UI\n- Validation: Hibernate Validator\n\n## Preview\n\n![alt text](https://github.com/Ulisses22/dockerized-spring-api/blob/b60507be7857256a893c3a62ada59d66ed8c3dc0/Screenshot.png?raw=true)\n\n\n### Enjoy coding! 💻✨\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fulisses22%2Fdockerized-spring-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fulisses22%2Fdockerized-spring-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fulisses22%2Fdockerized-spring-api/lists"}