Back to Bricks

Shopping Cart

E-Commerce

Full cart functionality with add, remove, update quantity, and checkout preparation. Handles stock validation.

shoppingcheckoutproductsAuth RequiredPayment
Backend:Frontend:
prisma/schema.prismajavascript
1model Cart {
2 id String @id @default(uuid())
3 userId String @unique
4 updatedAt DateTime @default(now())
5}
6
7model CartItem {
8 id String @id @default(uuid())
9 cartId String
10 cart Cart @relation(fields: [cartId], references: [id])
11 productId String
12 price Float
13 quantity Int @default(1)
14}

Paste Guide

Copy files to:

prisma/schema.prisma (append models)repositories/cart.repo.jscontrollers/cartController.jsroutes/cartRoutes.js

Add to server.js:

app.use('/api/cart', require('./routes/cartRoutes'));

Stack

PrismaExpress

Test Examples

curl -X POST http://localhost:5000/api/cart \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"productId": "product_id", "quantity": 2}'
curl http://localhost:5000/api/cart \
  -H "Authorization: Bearer YOUR_TOKEN"
curl -X PUT http://localhost:5000/api/cart/product_id \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"quantity": 5}'