{"id":27433136,"url":"https://github.com/kei-k23/books-sharing-platform","last_synced_at":"2025-04-14T17:14:16.150Z","repository":{"id":287525217,"uuid":"965010780","full_name":"Kei-K23/books-sharing-platform","owner":"Kei-K23","description":"📚 Books sharing platform that build with VueJS, NestJS, Postgres and TypeScript","archived":false,"fork":false,"pushed_at":"2025-04-13T15:07:27.000Z","size":368,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-14T17:14:13.013Z","etag":null,"topics":["monorepo","nestjs","nodejs","pnpm","postgres","prisma","react","react-router","tanstack-react-query"],"latest_commit_sha":null,"homepage":"https://books-sharing-platform.onrender.com","language":"TypeScript","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/Kei-K23.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,"zenodo":null}},"created_at":"2025-04-12T08:01:04.000Z","updated_at":"2025-04-13T15:07:31.000Z","dependencies_parsed_at":"2025-04-12T09:28:35.120Z","dependency_job_id":"ab377914-27d5-48be-bd5b-401e7810f80c","html_url":"https://github.com/Kei-K23/books-sharing-platform","commit_stats":null,"previous_names":["kei-k23/books-sharing-platform"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kei-K23%2Fbooks-sharing-platform","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kei-K23%2Fbooks-sharing-platform/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kei-K23%2Fbooks-sharing-platform/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kei-K23%2Fbooks-sharing-platform/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Kei-K23","download_url":"https://codeload.github.com/Kei-K23/books-sharing-platform/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248923768,"owners_count":21183953,"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":["monorepo","nestjs","nodejs","pnpm","postgres","prisma","react","react-router","tanstack-react-query"],"created_at":"2025-04-14T17:14:15.489Z","updated_at":"2025-04-14T17:14:16.135Z","avatar_url":"https://github.com/Kei-K23.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 📚 Books Sharing Platform\n\nBooks sharing platform that build with NodeJS, NestJS, Postgres, React and TypeScript.\n\n## 📘 API SPECIFICATION (v1)\n\n### 🔐 Auth\n\n| Method | Endpoint         | Description                |\n| ------ | ---------------- | -------------------------- |\n| POST   | `/auth/register` | Register new user          |\n| POST   | `/auth/login`    | Login user                 |\n| POST   | `/auth/logout`   | Logout user (token revoke) |\n| GET    | `/auth/profile`  | Get current user info      |\n| PATCH  | `/auth/profile`  | Update user profile        |\n\n---\n\n### 👤 Users\n\n| Method | Endpoint               | Description             |\n| ------ | ---------------------- | ----------------------- |\n| GET    | `/users/:id`           | Get public user profile |\n| GET    | `/users/:id/books`     | Get user-owned books    |\n| GET    | `/users/:id/favorites` | Get user favorite books |\n| GET    | `/users/:id/friends`   | Get user’s friends      |\n\n---\n\n### 📚 Books\n\n| Method | Endpoint     | Description         |\n| ------ | ------------ | ------------------- |\n| GET    | `/books`     | List all books      |\n| POST   | `/books`     | Add a new book      |\n| GET    | `/books/:id` | Get book details    |\n| PATCH  | `/books/:id` | Update book details |\n| DELETE | `/books/:id` | Delete a book       |\n\n---\n\n### 📦 Book Copies (user-owned books)\n\n| Method | Endpoint      | Description                     |\n| ------ | ------------- | ------------------------------- |\n| GET    | `/copies`     | List all available copies       |\n| POST   | `/copies`     | Add a book to user's collection |\n| GET    | `/copies/:id` | Get copy details                |\n| PATCH  | `/copies/:id` | Update copy details             |\n| DELETE | `/copies/:id` | Remove copy                     |\n\n---\n\n### 🔄 Borrow Requests\n\n| Method | Endpoint                      | Description              |\n| ------ | ----------------------------- | ------------------------ |\n| GET    | `/borrow-requests`            | List all requests (mine) |\n| POST   | `/borrow-requests`            | Send a borrow request    |\n| PATCH  | `/borrow-requests/:id/accept` | Accept a request         |\n| PATCH  | `/borrow-requests/:id/reject` | Reject a request         |\n| PATCH  | `/borrow-requests/:id/return` | Mark as returned         |\n\n---\n\n### 📝 Reviews\n\n| Method | Endpoint             | Description                |\n| ------ | -------------------- | -------------------------- |\n| GET    | `/books/:id/reviews` | Get all reviews for a book |\n| POST   | `/books/:id/reviews` | Add a review               |\n| DELETE | `/reviews/:id`       | Delete a review (own only) |\n\n---\n\n### 🏷 Tags / Genres\n\n| Method | Endpoint                 | Description          |\n| ------ | ------------------------ | -------------------- |\n| GET    | `/tags`                  | List all tags        |\n| POST   | `/tags`                  | Create a new tag     |\n| POST   | `/books/:id/tags`        | Add tags to book     |\n| DELETE | `/books/:id/tags/:tagId` | Remove tag from book |\n\n---\n\n### ⭐ Favorites / Wishlist\n\n| Method | Endpoint              | Description           |\n| ------ | --------------------- | --------------------- |\n| POST   | `/books/:id/favorite` | Add book to favorites |\n| DELETE | `/books/:id/favorite` | Remove from favorites |\n\n---\n\n### 👥 Friendships\n\n| Method | Endpoint               | Description          |\n| ------ | ---------------------- | -------------------- |\n| GET    | `/friends`             | List current friends |\n| POST   | `/friends/:id/request` | Send friend request  |\n| PATCH  | `/friends/:id/accept`  | Accept request       |\n| PATCH  | `/friends/:id/reject`  | Reject request       |\n| DELETE | `/friends/:id`         | Remove friend        |\n\n---\n\n### 🔔 Notifications\n\n| Method | Endpoint                  | Description            |\n| ------ | ------------------------- | ---------------------- |\n| GET    | `/notifications`          | Get user notifications |\n| PATCH  | `/notifications/:id/read` | Mark as read           |\n\n---\n\n### 📊 Activity\n\n| Method | Endpoint      | Description              |\n| ------ | ------------- | ------------------------ |\n| GET    | `/activities` | Get recent user activity |\n\n--\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkei-k23%2Fbooks-sharing-platform","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkei-k23%2Fbooks-sharing-platform","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkei-k23%2Fbooks-sharing-platform/lists"}