{"id":26800418,"url":"https://github.com/barwol/remitly-banking-api","last_synced_at":"2026-04-17T07:31:43.715Z","repository":{"id":281874657,"uuid":"942115699","full_name":"BarWol/remitly-banking-api","owner":"BarWol","description":"Spring Boot API for Remitly internship, managing banking data with CRUD operations. Uses PostgreSQL, Docker, after parsing the csv file","archived":false,"fork":false,"pushed_at":"2025-03-12T22:39:51.000Z","size":73,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-29T20:17:01.636Z","etag":null,"topics":["docker","java","postgresql","spring"],"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/BarWol.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":"2025-03-03T15:44:58.000Z","updated_at":"2025-03-12T22:39:54.000Z","dependencies_parsed_at":"2025-03-11T16:32:11.245Z","dependency_job_id":"7423319c-4465-4d53-b1ca-2d2265144460","html_url":"https://github.com/BarWol/remitly-banking-api","commit_stats":null,"previous_names":["barwol/remitly-banking-api"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BarWol%2Fremitly-banking-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BarWol%2Fremitly-banking-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BarWol%2Fremitly-banking-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BarWol%2Fremitly-banking-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BarWol","download_url":"https://codeload.github.com/BarWol/remitly-banking-api/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246237437,"owners_count":20745348,"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","java","postgresql","spring"],"created_at":"2025-03-29T20:17:04.114Z","updated_at":"2026-04-17T07:31:43.652Z","avatar_url":"https://github.com/BarWol.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Remitly Banking API  \n\nA **Spring Boot** API developed as part of the Remitly internship application, designed to manage banking data with full **CRUD operations**.  \nThe application parses a **CSV file** to populate the database and provides **RESTful endpoints** to interact with banking data.  \n\n## Features  \n\n- **Spring Boot**  \n- **PostgreSQL** \n- **Docker** \n- **CSV Parsing** \n- **RESTful API Design**\n- **Postman**\n- **Maven**\n  \n## Technologies Used  \n\n- **Spring Boot** \n- **PostgreSQL**   \n- **Docker**   \n- **CSV Parsing**   \n- **RESTful Web Services**   \n\n## API Endpoints  \n\n| Method   | Endpoint                        | Description                                 |\n|----------|---------------------------------|---------------------------------------------|\n| **GET**  | `/v1/test`              | Retrieve all banking records.              |\n| **GET**  | `/v1/swift-codes/{swiftCode}`  | Retrieve a specific banking record in json format     |\n| **GET**  | `/v1/swift-codes/country/{countryISO2code}`  | Retrieve banks in a country given IS02code   |\n| **POST** | `/v1/swift-codes`              | Create a new banking record. The headquarter must be added before branch              |\n| **DELETE** | `/v1/swift-codes/{swiftCode}` | Delete a banking record.                   |\n\n## Testing  \n\nDue to time constraints, the project lacks full unit test coverage with mocking. However, thorough manual testing during development was conducted using:  \n- **Postman** – For API request validation and response testing.  \n- **SQL Queries** – To verify database changes and data integrity.\n\n  ## Integration tests are present\n\n\n### Challenges Faced  \n\nWhile coding was relatively straightforward and enjoyable, organizing the project properly took some extra effort.  \n\n---\n### How to run instructions:\nTo run this project, ensure that **Docker** is installed\n1. clone the repository\n2. docker-compose up --build\n3. mvn test to run the integration api tests\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbarwol%2Fremitly-banking-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbarwol%2Fremitly-banking-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbarwol%2Fremitly-banking-api/lists"}