Item Resale Platform🔗
A full-stack, modern web application for buying and selling second-hand items.
Watch a 40 seconds quick video walkthrough🔗
Main Features🔗
Main Page🔗
See a list of item listings uploaded by users.
Filters & Sort & Search🔗
- Filter listings by Price range and/or Color
- Sort listings by: Price: Low to High / High to Low / Post Date
- Live search bar included in the menu bar. Search based on item's description
Item Detail page🔗
- Shows an item's detailed information
Real-Time Chat🔗
- WebSocket-based chat system between buyers and sellers
- Real-time message updates supported
Sell an Item🔗
- Listings include title, description, price, color, condition, and multiple images
- Users can upload 1–10 images per listing, with the first image being treated as the main display image
- Images are uploaded and stored using AWS S3
- Main image URL is stored in the item model; all other images linked via itemId
AI Description Generation🔗
Optionally, let AI generate the item's description for you
- Using OpenAI GPT-4o model
- Generates item descriptions based on uploaded images + item's metadata. Images are passed as Base64-encoded data
- You can see the new added item:
User Authentication🔗
- Secure login and registration using JWT-based authentication
- Session expiration and role-based access control (e.g., Admin privileges)
Admin Interface🔗
- Admin users can:
- View all users
- Manage all item listings
Tech Stack🔗
Frontend🔗
- React (with TypeScript)
- Vite (build tool)
- Tailwind CSS v4 (utility-first styling)
Backend🔗
- Node.js with Express
- PostgreSQL database
- Sequelize ORM
- JWT for authentication
Cloud & External Services🔗
- OpenAI API (GPT-4o for generating item descriptions based on image + item's metadata)
- AWS S3 for image storage
Sample Code🔗
Author🔗
Ruichen Zhao