Skip to content

jamsrworld/ecommerce-rust-nextjs-mcart

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MCart - A Modern Fullstack E-Commerce Marketplace

Built with Next.js 15 App Router frontend and Rust Actix-Web backend

.

This project is currently in development

Demo

Project Image

Tech Stack

Features

Frontend

  • 🚀 Built from Scratch with Next.js 15
  • 🌟 Modern, Clean UI with JamsrUI
  • ⚡ Powered by Turborepo Workspaces
  • 💻 Stunning Landing & Product Pages
  • 🛒 Seamless E-commerce Experience
  • 🔑 Custom Authentication Built with JWT from Scratch
  • ✉️ Beautifully Designed Email Notifications
  • ⌨️ 100% TypeScript Codebase
  • 📱 Mobile-First Design
  • 🛠️ Customizable Themes
  • 💾 SEO & Performance Optimized
  • 📊 Vercel Analytics Integration
  • 🔒 Built-in Security
  • 🐳 Dockerfile Included
  • 🔄 Backend-Frontend Type Sync via OpenAPI
  • 🎁 …and So Much More!

Backend

  • 🚀 Built in Rust with Actix Web
  • ⚡ Rust Workspaces with Cargo
  • 🔐 Rate Limiting with Redis
  • 🔑 Custom Authentication Built with JWT from Scratch
  • ✉️ Beautiful Email Templates with Askama
  • 📜 OpenAPI Integration
  • 💻 API Documentation
  • 🐳 Dockerfile Included
  • ⚙️ Powered by SeaORM
  • 🛢️ PostgreSQL Database
  • 🔒 Secure & Efficient
  • 🎛️ Highly Configurable
  • 🎁 ...and More Advanced Features!

Getting started

To get started with this project, run

  git clone https://github.com/jamsrworld/ecommerce-rust-nextjs-mcart.git

Setup Server

Requirements

Go to server folder and:

  1. Copy Environment Variables
    Duplicate the .env.example file and rename the copy to .env.

  2. Fill Out the Variables
    Update the .env file with the required configuration values.

  3. Run database migrations
    Run

    sea-orm-cli migrate up -d db/migration

    or

    make run_migration
  4. You're All Set!
    Start the server with

    cargo run

    or for live reload

    make dev

Setup Client

Go to client/apps/www folder and:

  1. Copy Environment Variables
    Duplicate the .env.example file and rename the copy to .env.

  2. Fill Out the Variables
    Update the .env file with the required configuration values.

  3. Install dependencies Install node_modules with:

    pnpm install
  4. You're All Set!
    Start terminal at client/apps/www and run

    pnpm dev

Image Previews

Project Image Project Image Project Image Project Image

License

MIT

This project is built by Jamsrworld.

Need customization or technical support? You can contact us for assistance.

If you want to support this project you can buy me a coffee.