{"id":23659702,"url":"https://github.com/hpavlo/car-service","last_synced_at":"2026-04-07T21:31:07.599Z","repository":{"id":159512134,"uuid":"585682320","full_name":"hpavlo/car-service","owner":"hpavlo","description":"Car service (backend \u0026 frontend)","archived":false,"fork":false,"pushed_at":"2023-03-03T18:36:46.000Z","size":642,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-08-29T06:19:48.496Z","etag":null,"topics":["angular","docker","java","liquibase","npm","postgresql","spring-boot","typescript"],"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/hpavlo.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":"2023-01-05T19:55:51.000Z","updated_at":"2023-03-01T10:34:14.000Z","dependencies_parsed_at":null,"dependency_job_id":"3ba79a54-ed8a-4d08-a6c0-6d8c55f684bd","html_url":"https://github.com/hpavlo/car-service","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/hpavlo/car-service","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hpavlo%2Fcar-service","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hpavlo%2Fcar-service/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hpavlo%2Fcar-service/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hpavlo%2Fcar-service/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hpavlo","download_url":"https://codeload.github.com/hpavlo/car-service/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hpavlo%2Fcar-service/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31530640,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-07T16:28:08.000Z","status":"ssl_error","status_checked_at":"2026-04-07T16:28:06.951Z","response_time":105,"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":["angular","docker","java","liquibase","npm","postgresql","spring-boot","typescript"],"created_at":"2024-12-29T02:56:17.908Z","updated_at":"2026-04-07T21:31:07.360Z","avatar_url":"https://github.com/hpavlo.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e\n  Car Service API ⚙️🚗⚙️\n\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"#-description\"\u003eDescription\u003c/a\u003e •\n  \u003ca href=\"#-features\"\u003eFeatures\u003c/a\u003e •\n  \u003ca href=\"#-architecture\"\u003eArchitecture\u003c/a\u003e •\n  \u003ca href=\"#-technologies\"\u003eTechnologies\u003c/a\u003e •\n  \u003ca href=\"#-how-to-start-the-program\"\u003eHow to start the program\u003c/a\u003e •\n  \u003ca href=\"#-uml-models-diagram\"\u003eUML diagram\u003c/a\u003e\n\u003c/p\u003e\n\n## 📃 Description\nCar Service is a web-application created to save car service orders in the database. The program is written in Java with Spring Boot and uses PostgreSQL as a database. The front-end part uses HTML/CSS, TypeScript and the Angular framework. For API testing, you can use Swagger, which is also available in the app.\n\n## 🚀 Features\nIn this program, you can store such data as information about drivers, their cars and orders. In addition, used goods and performed service work are stored (detailed information about models can be found on the [UML diagram](#-uml-models-diagram)). At the end of the completed order, you can calculate the total price for the work, and if the client refused to use the service, then he will only pay the amount for diagnostics in the amount of UAH 500. Also available is the calculation of wages for craftsmen, which is calculated as 40% of the price of the performed service work.\n\nHere you can see how to create new order using frontend [page](http://localhost:4200/orders)\n\n![Creating new order](images/creatingNewOrder.gif)\n\nAlso, by selecting the desired order, you can view its details and change them\n\n![Updating order status](images/updatingOrderStatus.gif)\n\nThe frontend part also has a global error interceptor that opens a standard browser dialog with a description of the problem and the error status code\n\n## ⚙ Architecture\n|       3-layer architecture       |\n|:--------------------------------:|\n|  Controller (Presentation layer) |\n|                ↓↑                |\n|    Service (Application layer)   |\n|                ↓↑                |\n|  Repository (Data access layer)  |\n\n## 🧑‍💻 Technologies\n| Technology    | Version |\n|:--------------|:--------|\n| Backend       |         |\n| JDK           | 17      |\n| Maven         | 4.0.0   |\n| Spring Boot   | 3.0.1   |\n| Swagger       | 2.9.2   |\n| PostgreSQL    | 15      |\n| Liquibase     | 4.17.2  |\n| Lombok        | 1.8.24  |\n| Docker        | -       |\n| Frontend      |         |\n| Angular       | 15.1.2  |\n| npm           | 9.3.1   |\n\n## 📎 How to start the program\n**To run an application via Docker, you must have the latest version of Docker installed on your local machine!**\n### Run Backend\n1. Clone the project from GitHub\n2. Open terminal in the project folder and run `mvn clean package -DskipTests` (you must also have Maven installed)\n3. When the project was built successfully, run the following command: `docker-compose up`\n4. After a successful start, the program can be tested using the link `http://localhost:6868/api/swagger-ui.html`\n\n### Run Frontend\n5. Install npm by the [link](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm)\n6. Open terminal in folder `/frontend` and run `npm start` (if you started the backend part in another way, don't forget to change your port in [proxy.conf.json](https://github.com/pavlogook/car-service/blob/04d5d80d9de8579b0cb521230cdcbc63389869b2/frontend/proxy.conf.json#L3):\n```\n{\n  \"/api/*\": {\n    \"target\": \"http://localhost:6868\",    // Change the port here\n    \"secure\": false,\n    \"logLevel\": \"debug\",\n    \"changeOrigin\": true\n  }\n}\n```\n7. When the compilation is completed successfully, open the [link](http://localhost:4200) in your browser\n8. Enjoy the program 😉\n\n## ✨ UML models diagram\n![UML diagram](images/uml.svg)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhpavlo%2Fcar-service","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhpavlo%2Fcar-service","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhpavlo%2Fcar-service/lists"}