Skip to content

10bitsofwalid/VeriChain-Authentication-WebApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 

Repository files navigation

🛡️ VeriChain

Trust Every Product

Enterprise-grade Product Authenticity Verification, Supply Chain Traceability, and Verified Marketplace

License MERN TypeScript


📖 Overview

VeriChain is a full-stack Web Application that helps manufacturers, sellers, buyers, moderators, and administrators verify product authenticity, manage supply chains, and combat counterfeit goods.

✨ Highlights

  • 🔐 JWT Authentication
  • 🏭 Manufacturer Dashboard (Product template registration & batch generation)
  • 🛒 Verified Marketplace (Listing, purchase, and ownership transfer)
  • 📦 Supply Chain Tracking (Comprehensive tracking history for every item)
  • 📱 Serial Number Verification (Public lookup page)
  • 🛡️ Separate Moderator Control Center (Review disputes, verify manufacturers, manage flagged listings)
  • 📊 Admin Control Center (Audit logs, invite admins/moderators, manage user statuses)

👥 User Roles

Role Responsibilities
Buyer Verify authenticity, buy items, file disputes/complaints
Seller Accept items, list items on marketplace
Factory Create product templates, generate item batches
Moderator Verify product templates, resolve complaints, flag risky items
Admin Verification of factories, invite system roles, view audit logs

🏗️ Tech Stack

Frontend

  • React (v19)
  • TypeScript
  • Vite
  • Axios
  • Lucide React (Icons)
  • Vitest & React Testing Library (Unit & Integration Testing)

Backend

  • Node.js & Express
  • Mongoose (MongoDB ODM)
  • TypeScript
  • JWT & Bcryptjs (Authentication & Cryptography)
  • Multer (File upload handler)
  • Jest & Supertest (Integration Testing)

📂 Folder Structure

VeriChain product authenticity webapp
├── frontend
│   ├── src
│   │   ├── api
│   │   ├── assets
│   │   ├── components
│   │   ├── context
│   │   ├── pages
│   │   └── tests
│   ├── public
│   ├── index.html
│   ├── vite.config.ts
│   └── package.json
├── backend
│   ├── src
│   │   ├── config
│   │   ├── middleware
│   │   ├── models
│   │   ├── routes
│   │   └── tests
│   └── package.json
└── README.md

🚀 Installation & Local Setup

1. Clone the Repository

git clone https://github.com/10bitsofwalid/VeriChain-Authentication-WebApp.git
cd "VeriChain product authenticity webapp"

2. Set Up Environment Variables

Backend (backend/.env)

Create a .env file inside the backend folder:

PORT=5000
MONGO_URI=mongodb:
JWT_SECRET=
CLOUDINARY_CLOUD_NAME=
CLOUDINARY_API_KEY= 
CLOUDINARY_API_SECRET= 

Frontend (frontend/.env)

Create a .env file inside the frontend folder:

VITE_API_URL=http://localhost:5000/api

3. Run the Services

Start Backend

cd backend
npm install
npm run dev

The backend server will run on http://localhost:5000.

Start Frontend

cd frontend
npm install
npm run dev

The frontend application will start on http://localhost:5173.


🧪 Running Tests

Backend Tests

To run the Jest/Supertest backend suite:

cd backend
npm test

Frontend Tests

To run the Vitest/React Testing Library suite:

cd frontend
npm test

📄 License

Distributed under the MIT License.


👨‍💻 Author

Walid Rahman

About

VeriChain is a full-stack MERN platform that combines e-commerce, product authenticity verification, and supply chain traceability to help users verify genuine products, track ownership history, and prevent counterfeit trading.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages