Skip to content

Ayushpremrocks/ShopQuick

πŸ›’ ShopQuick

A modern, full-stack multi-vendor e-commerce platform

Live Demo License PRs Welcome GitHub issues

Built with Next.js, PostgreSQL, and modern web technologies for seamless multi-vendor commerce experience.


🌟 Overview

ShopQuick is a comprehensive multi-vendor e-commerce platform that enables entrepreneurs to create their own online stores and sell products through a unified marketplace. With features like admin approval workflows, premium subscriptions, and integrated payment processing, it provides everything needed to run a modern e-commerce business.

πŸ”— Live Demo: ShopQuick


✨ Key Features

πŸͺ Multi-Vendor Marketplace

  • Store Creation: Users can easily create and customize their own online stores
  • Admin Approval: Secure store approval process to maintain platform quality
  • Vendor Management: Comprehensive tools for vendor onboarding and management

πŸ‘₯ User Experience

  • Customer Storefront: Beautiful, responsive interface for browsing and purchasing
  • Vendor Dashboards: Dedicated analytics and product management tools
  • Admin Panel: Complete oversight of stores, products, and commissions

πŸ’³ E-commerce Essentials

  • Stripe Integration: Secure payment processing for all transactions
  • Premium Subscriptions: Subscription billing for enhanced store features
  • Discount System: Flexible coupon and discount management
  • Order Management: Complete order tracking and fulfillment system

πŸ” Security & Authentication

  • Clerk Auth: Seamless user authentication and management
  • Role-based Access: Different permission levels for customers, vendors, and admins
  • Secure Transactions: Industry-standard security practices

πŸ› οΈ Tech Stack

Category Technology Purpose
Frontend Next.js 14 React framework with App Router
Styling Tailwind CSS Utility-first CSS framework
Database Neon PostgreSQL Serverless PostgreSQL database
Authentication Clerk User management and authentication
Image Storage ImageKit Cloud-based image optimization
Background Jobs Inngest Job scheduling and management
Payments Stripe Payment processing
State Management Redux Toolkit Predictable state container
Icons Lucide React Beautiful icon library
Deployment Vercel Serverless deployment platform

πŸš€ Getting Started

Prerequisites

  • Node.js 18.x or later
  • npm, yarn, pnpm, or bun
  • PostgreSQL database (via Neon)
  • Clerk account for authentication
  • ImageKit account for image storage
  • Stripe account for payments

Installation

  1. Clone the repository

    git clone https://github.com/ayushpremrocks/shopquick.git
    cd shopquick
  2. Install dependencies

    npm install
  3. Environment Setup

    Create a .env.local file in the root directory:

    # Clerk Authentication
    NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your_clerk_publishable_key
    CLERK_SECRET_KEY=your_clerk_secret_key
    
    # Database (Neon PostgreSQL)
    DATABASE_URL=your_neon_database_url
    
    # ImageKit
    NEXT_PUBLIC_IMAGEKIT_PUBLIC_KEY=your_imagekit_public_key
    IMAGEKIT_PRIVATE_KEY=your_imagekit_private_key
    IMAGEKIT_URL_ENDPOINT=your_imagekit_url_endpoint
    
    # Stripe
    NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=your_stripe_publishable_key
    STRIPE_SECRET_KEY=your_stripe_secret_key
    
    # Inngest
    INNGEST_EVENT_KEY=your_inngest_event_key
    INNGEST_SIGNING_KEY=your_inngest_signing_key
  4. Database Setup

    npm run db:push
    npm run db:seed  # Optional: seed with sample data
  5. Start the development server

    npm run dev
  6. Open your browser

    Navigate to http://localhost:3000 to see the application.


πŸ“ Project Structure

shopquick/
β”œβ”€β”€ app/                    # Next.js App Router
β”‚   β”œβ”€β”€ (admin)/           # Admin dashboard pages
β”‚   β”œβ”€β”€ (public)/          # Public storefront pages
β”‚   β”œβ”€β”€ (vendor)/          # Vendor dashboard pages
β”‚   └── api/               # API routes
β”œβ”€β”€ components/            # Reusable React components
β”œβ”€β”€ lib/                   # Utility functions and configurations
β”œβ”€β”€ public/                # Static assets
β”œβ”€β”€ store/                 # Redux store configuration
β”œβ”€β”€ types/                 # TypeScript type definitions
└── styles/                # Global styles

πŸ”§ Configuration

Service Setup

  1. Clerk Authentication - Sign up here

    • Create a new application
    • Copy your publishable and secret keys
  2. Neon Database - Get started

    • Create a new PostgreSQL database
    • Copy your connection string
  3. ImageKit - Register here

    • Set up image storage and optimization
    • Configure your endpoint and keys
    • Documentation
  4. Inngest - Learn more

    • Set up background job processing
    • Configure event handling

πŸ“Έ Screenshots

Add screenshots of your application here to showcase the UI


πŸš€ Deployment

Deploy to Vercel

  1. Connect your repository

    # Push your code to GitHub
    git add .
    git commit -m "Initial commit"
    git push origin main
  2. Deploy with Vercel

    • Visit vercel.com
    • Import your GitHub repository
    • Configure environment variables
    • Deploy!

Your application will be available at your custom Vercel URL.


🀝 Contributing

We welcome contributions from the community! Here's how you can help:

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

Please read our CONTRIBUTING.md for detailed guidelines.


πŸ“‹ Roadmap

  • Mobile app development (React Native)
  • Advanced analytics dashboard
  • Multi-language support
  • AI-powered product recommendations
  • Social media integrations
  • Advanced SEO optimizations

πŸ› Known Issues

  • Issue tracking will be managed via GitHub Issues

πŸ“š Resources & Learning


πŸ“„ License

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


πŸ‘€ Author

Ayush Prem


⭐ Show Your Support

If this project helped you, please consider giving it a ⭐️ on GitHub!


Made with ❀️ and lots of β˜•

View Live Demo β€’ Report Bug β€’ Request Feature

About

A full-stack multi-vendor e-commerce platform with vendor dashboards, customer storefronts, and an admin panel.

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Contributors

Languages