{"id":19236122,"url":"https://github.com/rosyid-grobogan/book-store-backend","last_synced_at":"2026-05-16T09:32:38.710Z","repository":{"id":111286998,"uuid":"255790277","full_name":"rosyid-grobogan/book-store-backend","owner":"rosyid-grobogan","description":"Book store backend using Spring Boot, JWT, Hibernate etc","archived":false,"fork":false,"pushed_at":"2024-08-26T18:02:38.000Z","size":160,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-23T13:44:30.645Z","etag":null,"topics":["back-end","ecommerce-store","java-8","spring-boot"],"latest_commit_sha":null,"homepage":"https://bookstore-restapi.herokuapp.com/swagger-ui.html","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/rosyid-grobogan.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":"2020-04-15T03:04:55.000Z","updated_at":"2020-05-12T07:13:58.000Z","dependencies_parsed_at":null,"dependency_job_id":"6ca9fdb1-2440-4779-9326-c0b0d69567ad","html_url":"https://github.com/rosyid-grobogan/book-store-backend","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rosyid-grobogan/book-store-backend","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rosyid-grobogan%2Fbook-store-backend","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rosyid-grobogan%2Fbook-store-backend/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rosyid-grobogan%2Fbook-store-backend/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rosyid-grobogan%2Fbook-store-backend/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rosyid-grobogan","download_url":"https://codeload.github.com/rosyid-grobogan/book-store-backend/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rosyid-grobogan%2Fbook-store-backend/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33096873,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-16T04:41:52.686Z","status":"ssl_error","status_checked_at":"2026-05-16T04:41:52.009Z","response_time":115,"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":["back-end","ecommerce-store","java-8","spring-boot"],"created_at":"2024-11-09T16:19:12.915Z","updated_at":"2026-05-16T09:32:38.694Z","avatar_url":"https://github.com/rosyid-grobogan.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Book Store Project - Backend with Microservices Style\n\nDemo:  https://bookstore-restapi.herokuapp.com/swagger-ui.html\n\n## Microservices Style\n### Struktur Package\n- account: user, authorization and authentication\n- catalog: product, favourite and category\n- shipment: shipment\n- transaction: cart, transaction, report\n- configglobal: swagger, minio, pagination, websecurity\n\n## User\n\n1. Register, Login, Logout (done)\n2. HomePage\n3. List Buku\n4. Search\n5. Add to Favorite (done)\n6. Detail Buku  (done)\n7. Add to Cart (done)\n8. Checkout (done)\n9. Payment via Wallet\n10. Konfirmasi Pembelian Page (done)\n11. Status Pembelian Page\n\n## Admin\n\n1. Register, Login, Logout\n2. CRUD Buku/Product (done) \n3. CRUD kategori (done)\n4. CRUD Daftar Pembelian\n5. Status Pendapatan\n\n\n## HTTP Header\nContent-Type : [{\"key\":\"Content-Type\",\"value\":\"application/json\",\"description\":\"\",\"type\":\"text\",\"enabled\":true}]\n\nAuthorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJyb3N5aWQiLCJpYXQiOjE1ODgxMjExMzIsImV4cCI6MTU4ODEyMTEzN30.foHbKUF5Edw3eCfB1wsmGIz1t-GGpG2zU2LaBZJ9HGa0BoXnRqgmQpvkyzTISB7nZLbHREcvcqOjtEijjW-VoQ\n\n## Resources Naming\n|      | API Name           | HTTP Method | Path                  | Status Code    | Desciption                        |\n| ---- | ------------------ | ----------- | --------------------- | -------------- | --------------------------------- |\n| 1    | GET Products       | GET         | /api/v1/products      | 200 OK         | All product resources are fetched |\n| 2    | POST Products      | POST        | /api/v1/products      | 201 Created    | A new product resource is created |\n| 3    | GET Products       | GET         | /api/v1/products/{id} | 200 OK         | One product resource is fetched   |\n| 4    | PUT/PATCH Products | PUT/PATCH   | /api/v1/products/{id} | 200 OK         | Product resource is updated       |\n| 5    | DELETE Products    | DELETE      | /api/v1/products/{id} | 204 No Content | Product resource is deleted       |\n\n\n\n## Entity\n## Update Data \n- CreatedBy and CreatedAt are not changed\n- Id cannot changed\n\n## Insert Examples\n### Admin Page\nCreate new product\n```\n# 2 Sample\n{\n  \"categoryId\": 1,\n  \"description\": \"Buku rekomendasi buat Anda\",\n  \"name\": \"Belajar Java\",\n  \"photoId\": 0,\n  \"price\": 120000,\n  \"productCategoryId\": { \"id\": 1  },\n  \"productStatus\": \"FOR_SELL\",\n  \"quantity\": 10,\n  \"slug\": \"belajar-java\",\n    \"productVisibility\": \"VISIBLE\"\n}\n{\n  \"categoryId\": 1,\n  \"description\": \"Buku rekomendasi buat Anda\",\n  \"name\": \"Belajar PHP\",\n  \"photoId\": 0,\n  \"price\": 124000,\n  \"productCategoryId\": { \"id\": 1  },\n  \"productStatus\": \"OUT_OF_STOCK\",\n  \"quantity\": 5,\n  \"slug\": \"belajar-php\",\n    \"productVisibility\": \"VISIBLE\"\n}\n```\nproductVisibility\": \"VISIBLE\" merupakan fitur untuk aktif dan menon-aktikan product.\nKarena terkadang pengguna tidak ingin menghapus tapi hanya menon-aktifkan product.\n\nValue of productStatus:\n- FOR_SELL : Button is actived and it's available for selling.\n- OUT_OF_STOCK : Disable button.\n- HIDDEN : Product price is not visible.\n\n\n### Langkah Persiapan\n- Download / Clone melalui GitHub\n- Buat Database\n- Sesuaikan konfigurasi Databasenya: Edit file application.properties\n\n### Buat Akun\n```json\n{\n  \"username\": \"rosyidgrobogan\",\n  \"email\": \"rosyid@bookstore.com\",\n  \"fullName\": \"Rosyid Grobogan\",\n  \"password\": \"rahasia\",\n  \"role\": [\n    \"ADMIN\", \"USER\"\n  ]\n}\n```\nKey \"role\" bernilai array, misal\n- [\"USER]\n- [\"ADMIN\", \"USER\"]\n\n### Dapatkan Token \n- Silakan SigIn dengan username dan password yang sudah didaftarkan\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frosyid-grobogan%2Fbook-store-backend","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frosyid-grobogan%2Fbook-store-backend","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frosyid-grobogan%2Fbook-store-backend/lists"}