Commerce to buy various books such as novels.
Production:
- https://halobuku.netlify.app
- https://halobuku.ericprd.site
- https://halobuku.baysatriow.me
- https://halobuku.dennysh.com
- https://halobuku.ersankarimi.com
Local:
- http://localhost:3000 for Next.js
Production:
https://halobuku.ericprd.site/api/v1
https://halobuku-api.ericprd.site/v1
https://halobuku.railway.app
Local:
http://localhost:5500
- Figma Mockup: Figma Mockup Link
- Whimsical Flowchart: Whimsical Link
- Display all books
- Book details
- Search books
- Cart page
- Checkout books
Name | Role | GitHub URL |
---|---|---|
Eric | Lead, Fullstack | @Eric |
Ersan | Frontend Design | @Ersan |
Bayu | Frontend, Design | @Bayu |
Denny | Frontend, Design | @Denny |
- HTML
- CSS
- Tailwind CSS
- JavaScript
- TypeScript
- Node.js & npm
- React
- Next.js v12
- next/router
- next/image
- Next.js v12
- Data Fetching
- REST API:
axios
/swr
- REST API:
- Misc
- Prettier
- ESLint
Install dependencies:
npm install
Run server in development mode:
npm run dev
Build for production:
npm run build
Start in production mode:
npm start
Details on deployment using Vercel or Netlify here.
HTTP | Endpoint | Description |
---|---|---|
GET | /books |
Get all books |
GET | /books/:id |
Get book by id |
POST | /books/ |
Create book |
DELETE | /books/:id |
Delete book by id |
POST | /register |
Register user |
POST | /verify |
Verify user |
POST | /login |
Login |
{
_id: Number,
title: String,
author: String,
publishedYear: Number,
description: String,
image: String,
price: Number,
quantity: Number,
isAvailable: Boolean
}
{
"name": "First Last",
"email": "[email protected]",
"password": "password123"
}