A modern, full-stack multi-vendor e-commerce platform
Built with Next.js, PostgreSQL, and modern web technologies for seamless multi-vendor commerce experience.
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
- 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
- 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
- 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
- Clerk Auth: Seamless user authentication and management
- Role-based Access: Different permission levels for customers, vendors, and admins
- Secure Transactions: Industry-standard security practices
| 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 |
- 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
-
Clone the repository
git clone https://github.com/ayushpremrocks/shopquick.git cd shopquick -
Install dependencies
npm install
-
Environment Setup
Create a
.env.localfile 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
-
Database Setup
npm run db:push npm run db:seed # Optional: seed with sample data -
Start the development server
npm run dev
-
Open your browser
Navigate to http://localhost:3000 to see the application.
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
-
Clerk Authentication - Sign up here
- Create a new application
- Copy your publishable and secret keys
-
Neon Database - Get started
- Create a new PostgreSQL database
- Copy your connection string
-
ImageKit - Register here
- Set up image storage and optimization
- Configure your endpoint and keys
- Documentation
-
Inngest - Learn more
- Set up background job processing
- Configure event handling
Add screenshots of your application here to showcase the UI
-
Connect your repository
# Push your code to GitHub git add . git commit -m "Initial commit" git push origin main
-
Deploy with Vercel
- Visit vercel.com
- Import your GitHub repository
- Configure environment variables
- Deploy!
Your application will be available at your custom Vercel URL.
We welcome contributions from the community! Here's how you can help:
- Fork the repository
- Create a feature branch
git checkout -b feature/amazing-feature
- Make your changes
- Commit your changes
git commit -m 'Add some amazing feature' - Push to the branch
git push origin feature/amazing-feature
- Open a Pull Request
Please read our CONTRIBUTING.md for detailed guidelines.
- Mobile app development (React Native)
- Advanced analytics dashboard
- Multi-language support
- AI-powered product recommendations
- Social media integrations
- Advanced SEO optimizations
- Issue tracking will be managed via GitHub Issues
- Next.js Documentation
- Tutorial Video - Complete build walkthrough
- Clerk Documentation
- Neon Documentation
- ImageKit Documentation
This project is licensed under the MIT License - see the LICENSE.md file for details.
Ayush Prem
- GitHub: @ayushpremrocks
- Project Link: https://github.com/ayushpremrocks/shopquick
If this project helped you, please consider giving it a βοΈ on GitHub!
Made with β€οΈ and lots of β
View Live Demo β’ Report Bug β’ Request Feature