Skip to content

anuragpy07/Artisans-India

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

6 Commits
Β 
Β 
Β 
Β 

Repository files navigation

🎨 Artisan India - E-Commerce Marketplace

React Node.js MongoDB Express Tailwind CSS

πŸš€ Connecting Local Artisans with Global Customers

A modern, full-stack marketplace platform showcasing India's rich heritage of handmade crafts and artisan products


🌟 Features

πŸ‘₯ User Experience

  • πŸ›οΈ Browse & Shop - Discover unique handmade products from local artisans
  • πŸ›’ Smart Cart - Add/remove items with real-time updates
  • πŸ” Secure Authentication - JWT-based sign up and login system
  • πŸ“Š Personal Dashboard - Track orders, manage profile, and view purchase history
  • 🎯 Product Filtering - Find exactly what you're looking for

πŸͺ Seller Portal

  • πŸ“ Multi-Step Registration - Streamlined seller onboarding process
  • βœ… Live Validation - Real-time form validation with progress tracking
  • ⏳ Admin Approval System - Quality control through admin verification
  • πŸ“ˆ Seller Dashboard - Manage products and track sales

βš™οΈ Admin Panel

  • πŸ‘¨β€πŸ’Ό Seller Management - Approve or reject seller applications
  • πŸ“‹ Clean Interface - Intuitive admin dashboard for easy management
  • πŸ” Application Review - Detailed seller application screening

πŸ—ΊοΈ Page Structure

Route Description Access Level
/ 🏠 Landing page with welcome banner Public
/signin πŸ”‘ User login form Public
/signup ✍️ New user registration Public
/shop πŸ›οΈ Product catalog from artisans Public
/artisans πŸ‘₯ Artisan directory with filters Public
/cart πŸ›’ Shopping cart management User
/dashboard πŸ“Š User profile & order history User
/register-as-seller πŸ“ Seller application form User
/admin βš™οΈ Admin panel for approvals Admin

πŸ› οΈ Tech Stack

Frontend

  • βš›οΈ React.js - Modern UI library
  • 🌐 React Router - Client-side routing
  • πŸ”„ Context API - State management
  • πŸ“‘ Axios - HTTP client
  • 🎨 Tailwind CSS - Utility-first styling
  • 🎯 React Icons - Beautiful icon library

Backend

  • 🟒 Node.js - Server runtime
  • ⚑ Express.js - Web framework
  • πŸƒ MongoDB - NoSQL database
  • πŸ” JWT - Authentication tokens
  • πŸ”’ bcrypt - Password hashing

πŸ“‘ API Endpoints

Authentication

POST /api/signup     - Register new user
POST /api/signin     - User login

Seller Management

POST /api/sellers           - Submit seller application
GET /api/sellers/pending    - Fetch pending applications
PATCH /api/sellers/:id/approve - Approve/reject seller

Products & Cart

GET /api/products    - Fetch all products
POST /api/cart       - Add item to cart
GET /api/cart        - Retrieve user cart

πŸ“ Project Structure

artisan-india/
β”œβ”€β”€ πŸ“ frontend/
β”‚   β”œβ”€β”€ πŸ“ src/
β”‚   β”‚   β”œβ”€β”€ πŸ“ components/
β”‚   β”‚   β”‚   β”œβ”€β”€ Home.jsx
β”‚   β”‚   β”‚   β”œβ”€β”€ SignIn.jsx
β”‚   β”‚   β”‚   β”œβ”€β”€ SignUp.jsx
β”‚   β”‚   β”‚   β”œβ”€β”€ Shop.jsx
β”‚   β”‚   β”‚   β”œβ”€β”€ Artisans.jsx
β”‚   β”‚   β”‚   β”œβ”€β”€ Cart.jsx
β”‚   β”‚   β”‚   β”œβ”€β”€ Dashboard.jsx
β”‚   β”‚   β”‚   β”œβ”€β”€ RegisterAsSeller.jsx
β”‚   β”‚   β”‚   └── AdminDashboard.jsx
β”‚   β”‚   β”œβ”€β”€ πŸ“ context/
β”‚   β”‚   β”‚   └── AuthContext.js
β”‚   β”‚   β”œβ”€β”€ πŸ“ styles/
β”‚   β”‚   └── App.js
β”œβ”€β”€ πŸ“ backend/
β”‚   β”œβ”€β”€ πŸ“ models/
β”‚   β”œβ”€β”€ πŸ“ routes/
β”‚   β”œβ”€β”€ πŸ“ middleware/
β”‚   └── server.js
└── README.md

πŸš€ Quick Start

Prerequisites

  • Node.js (v14 or higher)
  • MongoDB (local or cloud)
  • Git

Installation

  1. Clone the repository

    git clone https://github.com/yourusername/artisan-india.git
    cd artisan-india
  2. Setup Frontend

    cd frontend
    npm install
    npm start

    Frontend runs on http://localhost:3000

  3. Setup Backend

    cd backend
    npm install
  4. Environment Configuration Create .env file in backend directory:

    MONGO_URI=your-mongodb-connection-string
    JWT_SECRET=your-super-secret-key
    PORT=5000
  5. Start Backend Server

    npm run dev

    Backend runs on http://localhost:5000

πŸ” Authentication Flow

  • JWT-based secure authentication
  • AuthContext manages user sessions across components
  • Protected routes for dashboard and admin access
  • Role-based access control (User/Seller/Admin)

🎨 Design Philosophy

  • Mobile-first responsive design
  • Figma-inspired UI components
  • Clean & intuitive user experience
  • Accessibility focused development
  • Performance optimized React components

🀝 Contributing

We welcome contributions! Please follow these steps:

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgements

  • Icons: FontAwesome & React Icons
  • UI/UX: Figma design system
  • Community: React and Node.js communities
  • Inspiration: Supporting local artisans and traditional crafts

Made with ❀️ for Indian Artisans

Artisans India - Preserving Heritage, Embracing Technology

πŸ“Š Project Status

  • Frontend setup with React
  • Backend API with Express & MongoDB
  • User authentication system
  • Seller registration workflow
  • Admin approval system
  • Payment integration
  • Order management
  • Email notifications
  • Advanced search & filters

πŸ”— Links

  • Live Demo: [Coming Soon]
  • API Documentation: [Coming Soon]
  • Design System: [Figma Link]

⭐ If you found this project helpful, please give it a star! It helps others discover the project.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors