{"id":23159119,"url":"https://github.com/clintonbrito/address-management-api","last_synced_at":"2026-05-05T19:32:37.822Z","repository":{"id":266569672,"uuid":"881070487","full_name":"clintonbrito/address-management-api","owner":"clintonbrito","description":"This project is the final assessment for the Squadra New Thinkers Bootcamp. It consists of an API for managing addresses, people, and related geographic data.","archived":false,"fork":false,"pushed_at":"2024-12-06T20:00:18.000Z","size":96,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-06T04:39:12.381Z","etag":null,"topics":["docker","java","oracle-database","spring","spring-boot","sql"],"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/clintonbrito.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":"2024-10-30T21:34:06.000Z","updated_at":"2024-12-06T20:00:22.000Z","dependencies_parsed_at":"2025-04-04T18:42:09.398Z","dependency_job_id":"06682c41-8776-4e1d-86dd-0f4715ecbc59","html_url":"https://github.com/clintonbrito/address-management-api","commit_stats":null,"previous_names":["clintonbrito/address-management-api"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/clintonbrito/address-management-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clintonbrito%2Faddress-management-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clintonbrito%2Faddress-management-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clintonbrito%2Faddress-management-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clintonbrito%2Faddress-management-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/clintonbrito","download_url":"https://codeload.github.com/clintonbrito/address-management-api/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/clintonbrito%2Faddress-management-api/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32664905,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-05T11:29:49.557Z","status":"ssl_error","status_checked_at":"2026-05-05T11:29:48.587Z","response_time":54,"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","java","oracle-database","spring","spring-boot","sql"],"created_at":"2024-12-17T22:29:08.920Z","updated_at":"2026-05-05T19:32:37.803Z","avatar_url":"https://github.com/clintonbrito.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Address Management API\n\nThis project is the final assessment for the Squadra New Thinkers Bootcamp. It consists of an API for managing addresses, people, and related geographic data, supporting CRUD operations for states, cities, neighborhoods, addresses, and people.\n\n## Requirements\n\n- Java 21\n- Maven 3.9.9\n- Docker\n\n## Running the project\n\nTo run the project, follow these steps:\n\n1. Clone the repository and enter the project directory:\n\n```bash\ngit clone git@github.com:clintonbrito/address-management-api.git\ncd address-management-api\n```\n\n2. Now you need to start the Oracle database. To do this, run the following command:\n\n```bash\ndocker-compose up -d\n```\n\n\u003e [!NOTE]\n\u003e In case you'd like to see the logs, you can run the command without the `-d` flag or run the following command:\n\u003e ```bash\n\u003e docker-compose logs -f\n\u003e ```\n\n\n3. Now you can start the application. To do this, run the following command:\n\n```bash\nmvn spring-boot:run\n```\n\n\u003e [!NOTE]\n\u003e The application will be available at `http://localhost:8080`.\n\n[//]: # (## API Documentation)\n\n[//]: # ()\n[//]: # (The API documentation is available at `http://localhost:8080/swagger-ui.html`.)\n\n## Endpoints\n\nThe API has the following endpoints:\n\n- `/uf`: CRUD operations for states\n- `/municipio`: CRUD operations for cities\n- `/bairro`: CRUD operations for neighborhoods\n- `/pessoa`: CRUD operations for people\n\n## Database\n\nThe database is an Oracle database. After starting the docker container, the user `C##JAVA` will be created automatically with its credentials and permissions. The file `criar_usuario_c##java_com_suas_permissões.sql` contains the SQL script to create the user and grant the necessary permissions.\n\nAnd the file `script_sql_criar_tabelas.sql` contains the SQL script to create the tables.\n\n## Technologies\n\n- Java\n- Spring Boot\n- Spring Data JPA\n- Oracle Database\n- Docker\n- Maven\n- Lombok\n- MapStruct\n\n## Architecture\n\nThe project follows the MVC architecture. The project is divided into the following packages:\n\nEach entity has its own package with the following structure:\n\n- `controller`: Contains the controllers for the API endpoints\n- `dto`: Contains the DTOs for the API\n- `mapper`: Contains the mappers for the DTOs\n- `model`: Contains the entities for the application\n- `repository`: Contains the repositories for the entities\n- `service`: Contains the services for the entities\n- `util`: Contains utility classes\n- `validator`: Contains the validator classes\n\nBesides the entity packages, the project has the following packages:\n\n- `common`: Contains common classes for the application\n- `common.exception`: Contains the exception classes for the application\n- `GlobalExceptionHandler` file: Contains the global exception handler for the application\n\nBesides the packages, the project has the following files:\n- `application.properties`: Contains the application properties\n- `criar_usuario_c##java_com_suas_permissões.sql`: Contains the SQL script to create the user and grant the necessary permissions\n- `script_sql_criar_tabelas.sql`: Contains the SQL script to create the tables\n- `docker-compose.yml`: Contains the Docker Compose file to start the Oracle database\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Author\n\n- [Clinton Brito](https://github.com/clintonbrito)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclintonbrito%2Faddress-management-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fclintonbrito%2Faddress-management-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fclintonbrito%2Faddress-management-api/lists"}