https://github.com/kei-k23/books-sharing-platform
π Books sharing platform that build with VueJS, NestJS, Postgres and TypeScript
https://github.com/kei-k23/books-sharing-platform
monorepo nestjs nodejs pnpm postgres prisma react react-router tanstack-react-query
Last synced: about 1 year ago
JSON representation
π Books sharing platform that build with VueJS, NestJS, Postgres and TypeScript
- Host: GitHub
- URL: https://github.com/kei-k23/books-sharing-platform
- Owner: Kei-K23
- Created: 2025-04-12T08:01:04.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-04-13T15:07:27.000Z (about 1 year ago)
- Last Synced: 2025-04-14T17:14:13.013Z (about 1 year ago)
- Topics: monorepo, nestjs, nodejs, pnpm, postgres, prisma, react, react-router, tanstack-react-query
- Language: TypeScript
- Homepage: https://books-sharing-platform.onrender.com
- Size: 359 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# π Books Sharing Platform
Books sharing platform that build with NodeJS, NestJS, Postgres, React and TypeScript.
## π API SPECIFICATION (v1)
### π Auth
| Method | Endpoint | Description |
| ------ | ---------------- | -------------------------- |
| POST | `/auth/register` | Register new user |
| POST | `/auth/login` | Login user |
| POST | `/auth/logout` | Logout user (token revoke) |
| GET | `/auth/profile` | Get current user info |
| PATCH | `/auth/profile` | Update user profile |
---
### π€ Users
| Method | Endpoint | Description |
| ------ | ---------------------- | ----------------------- |
| GET | `/users/:id` | Get public user profile |
| GET | `/users/:id/books` | Get user-owned books |
| GET | `/users/:id/favorites` | Get user favorite books |
| GET | `/users/:id/friends` | Get userβs friends |
---
### π Books
| Method | Endpoint | Description |
| ------ | ------------ | ------------------- |
| GET | `/books` | List all books |
| POST | `/books` | Add a new book |
| GET | `/books/:id` | Get book details |
| PATCH | `/books/:id` | Update book details |
| DELETE | `/books/:id` | Delete a book |
---
### π¦ Book Copies (user-owned books)
| Method | Endpoint | Description |
| ------ | ------------- | ------------------------------- |
| GET | `/copies` | List all available copies |
| POST | `/copies` | Add a book to user's collection |
| GET | `/copies/:id` | Get copy details |
| PATCH | `/copies/:id` | Update copy details |
| DELETE | `/copies/:id` | Remove copy |
---
### π Borrow Requests
| Method | Endpoint | Description |
| ------ | ----------------------------- | ------------------------ |
| GET | `/borrow-requests` | List all requests (mine) |
| POST | `/borrow-requests` | Send a borrow request |
| PATCH | `/borrow-requests/:id/accept` | Accept a request |
| PATCH | `/borrow-requests/:id/reject` | Reject a request |
| PATCH | `/borrow-requests/:id/return` | Mark as returned |
---
### π Reviews
| Method | Endpoint | Description |
| ------ | -------------------- | -------------------------- |
| GET | `/books/:id/reviews` | Get all reviews for a book |
| POST | `/books/:id/reviews` | Add a review |
| DELETE | `/reviews/:id` | Delete a review (own only) |
---
### π· Tags / Genres
| Method | Endpoint | Description |
| ------ | ------------------------ | -------------------- |
| GET | `/tags` | List all tags |
| POST | `/tags` | Create a new tag |
| POST | `/books/:id/tags` | Add tags to book |
| DELETE | `/books/:id/tags/:tagId` | Remove tag from book |
---
### β Favorites / Wishlist
| Method | Endpoint | Description |
| ------ | --------------------- | --------------------- |
| POST | `/books/:id/favorite` | Add book to favorites |
| DELETE | `/books/:id/favorite` | Remove from favorites |
---
### π₯ Friendships
| Method | Endpoint | Description |
| ------ | ---------------------- | -------------------- |
| GET | `/friends` | List current friends |
| POST | `/friends/:id/request` | Send friend request |
| PATCH | `/friends/:id/accept` | Accept request |
| PATCH | `/friends/:id/reject` | Reject request |
| DELETE | `/friends/:id` | Remove friend |
---
### π Notifications
| Method | Endpoint | Description |
| ------ | ------------------------- | ---------------------- |
| GET | `/notifications` | Get user notifications |
| PATCH | `/notifications/:id/read` | Mark as read |
---
### π Activity
| Method | Endpoint | Description |
| ------ | ------------- | ------------------------ |
| GET | `/activities` | Get recent user activity |
--