这是indexloc提供的服务,不要输入任何密码
Skip to content

iamxerrycan/swapmate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

🔁 SwapMet - Barter Exchange Platform

SwapMet is a full-stack barter-based item exchange platform where users can list items they want to swap (like books, electronics, clothes, etc.) and request swaps with others nearby.

📦 Built with Node.js, Express, MongoDB, JWT Auth,Rest API, Socket IO and Multer


📌 Features

  • ✅ User registration and login (JWT protected)
  • ✅ Add item with category, description, address, optional image & coordinates
  • ✅ Get all items (optionally filter by category or nearby location)
  • ✅ Get item by ID
  • ✅ Get current user's items
  • ✅ Mark item as swapped
  • ✅ Store item location using GeoJSON (MongoDB 2dsphere)
  • ✅ Image upload support (Multer – local, optional Cloudinary)
  • ✅ Fully RESTful API structure
  • ✅ Middleware-protected routes
  • ✅ Swap request system
  • ✅ Real-time chat using Socket.IO

🧠 Technologies Used

Tech Purpose
Node.js + Express Backend framework
MongoDB + Mongoose NoSQL Database
JWT (jsonwebtoken) Auth tokens
bcryptjs Password hashing
Multer File/image upload
dotenv Environment variables
Socket.IO Real-time chat
Cloudinary / S3 (optional) Image hosting
MongoDB GeoJSON + 2dsphere Geo queries

⚙️ Setup & Run Instructions

git clone https://github.com/yourusername/swapmet.git
cd swapmet
npm install

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published