grandnode2 is a free, open source e-commerce platforms project written in C# and released under GPL-3.0. It has 1,327 GitHub stars, 551 forks and 85 open issues, and was last pushed 4 days ago. On this registry it ranks #33 of 44 tracked projects in E-commerce Platforms, with 5 head-to-head comparisons available.

GrandNode - Open Source E-Commerce Platform

OPEN-SOURCE E-COMMERCE PLATFORM
FREE, FAST, FLEXIBLE, FEATURE-RICH

GrandNode is a powerful, scalable e-Commerce platform built with MongoDB and ASP.NET Core.
Based on the modern MongoDB database, this fully open-source system supports multiple business models:
B2B, B2C, Multi-Store, Multi-Vendor, Multi-Tenant, Multi-Language, Multi-Currency.
Achieve superior performance, unlimited scalability, and comprehensive customization to drive your online business success.

Explore the project »

View Demo · Report Bug · Request Feature · Visit forum · Themes · Integrations & Plugins · Premium support

Tests on Linux, MacOS and Windows Build Status Docker Image CI License CodeQL Advanced

Table of Contents

Overview

GrandNode was designed to solve the most important business challenges from the world of digital shopping. The goal for us is to provide the platform with:

  • The high performance front-end, rendered within miliseconds,
  • The high performance application to handle temporary and permanent traffic overloads,
  • Highly advanced e-commerce platform with unlimited possibilities of integration with existing third-party softwares
  • Fast development with modern codebase
  • Scalable e-commerce platform to grow with the business

Key Features

Performance & Architecture

  • High-Performance - Pages render in milliseconds
  • 📊 MongoDB Database - Superior scalability and performance
  • 🚀 ASP.NET Core - Modern and efficient codebase

Business Features

  • 🏪 Multi-Store Management - Run multiple stores from one installation
  • 👥 B2B & B2C Support - Serve both business and consumer customers
  • 🌎 Multi-Language & Multi-Currency - Sell globally with localized experiences
  • 🛒 Advanced Product Catalog - Flexible product attributes, variants, and pricing
  • 💰 Multiple Payment Gateways - Including Stripe, BrainTree and more
  • 🚚 Customizable Shipping Options - Fixed rate, by weight, shipping points
  • 📱 Mobile-Optimized - Responsive design for all devices

Marketing & SEO

  • 🔍 SEO-Friendly - URL structure, meta tags, and sitemap generation
  • 🔔 Customer Segmentation - Target specific customer groups
  • 📧 Email Marketing Integration - Boost your sales with newsletters
  • 📊 Analytics Integration - Track performance with Google Analytics

Technical Highlights

GrandNode 2 leverages the latest technologies to deliver a high-performance e-commerce solution:

  • ASP.NET Core 10.0 - Modern, cross-platform framework
  • MongoDB 4.0+ - NoSQL database for unlimited scalability
  • Vue 3 + Bootstrap 5 - Storefront UI, bundled with Vite
  • Docker Support - Easy deployment and containerization
  • REST API - Comprehensive API for integrations
  • Cloud-Ready - Optimized for cloud hosting environments
  • Real-time Processing - Immediate updates throughout the system

Getting Started

To get a local copy up and running follow these simple steps.

Prerequisites

Tool Version Needed for
.NET SDK 10.0.100 or newer building and running everything. The version is pinned in global.json with rollForward: latestFeature, so any 10.0.x SDK works
MongoDB 4.0+ the database. A local server, a Docker container or a MongoDB Atlas cluster all work
Node.js + npm 20 LTS or newer only when you change the storefront frontend sources. The build output is committed, so you can run the shop without Node
IDE any with .NET 10 support - Visual Studio, JetBrains Rider, VS Code optional

Only the SDK and MongoDB are required to get the shop running - see Building from source for when Node.js comes into play.

Installation

GrandNode can be installed in a few different ways. Note: The develop branch is the development version of GrandNode and it may be unstable. The main branch is the primary branch that contains the latest stable version. You can also download specific stable versions from the Releases page or switch to a release branch.

  • Docker
docker run -d -p 127.0.0.1:27017:27017 --name mongodb mongo 
docker run -d -p 80:8080 --name grandnode2 --link mongodb:mongo -v grandnode_images:/app/wwwroot/assets/images -v grandnode_appdata:/app/App_Data grandnode/grandnode2

If you want to download the latest stable version of GrandNode please use the following command, where x.xx is a number of GrandNode release:

docker pull grandnode/grandnode2:x.xx 
  • Open locally in an IDE

Extract the source code package downloaded from the Releases tab to a folder (or clone the repository), and open GrandNode.slnx. Build the whole solution - that compiles the modules and plugins into the web project's output as well - then set Grand.Web as the startup project and run it. See Building from source for the command line equivalent and for the frontend build.

  • Host on Linux server

Before you start - please install, configure the nginx server, the .NET 10 SDK and MongoDB 4.0+

mkdir ~/source
cd ~/source
git clone - b x.xx https://github.com/grandnode/grandnode2.git
cd ~/source/grandnode
dotnet restore GrandNode.slnx

Now it's time to rebuild all modules and plugins and publish the application. Each module and plugin copies itself into the web project's output, so they have to be built before the publish step:

for module in src/Modules/*; do dotnet build "$module" -c Release; done
for plugin in src/Plugins/*; do dotnet build "$plugin" -c Release; done
dotnet publish src/Web/Grand.Web -c Release -o /var/webapps/grandnode

Optional: Create the service file, to automatically restart your application.

sudo vi /etc/systemd/system/grandnode.service

Paste the following content, and save changes:

[Unit]
Description=GrandNode

[Service]
WorkingDirectory=/var/webapps/grandnode
ExecStart=/usr/bin/dotnet /var/webapps/grandnode/Grand.Web.dll
Restart=always
RestartSec=10
SyslogIdentifier=dotnet-grandnode
User=www-data
Environment=ASPNETCORE_ENVIRONMENT=Production

[Install]
WantedBy=multi-user.target

Enable the service and restart the GrandNode

sudo systemctl enable grandnode.service
sudo systemctl start grandnode.service

Feel free to visit our detailed guide about GrandNode installation.

Building from source

Backend
dotnet restore

readme truncated — read the full docs on github

Frequently asked questions

Is grandnode2 free to use?

grandnode2 is open source under the GPL-3.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does grandnode2 do?

E-commerce platform built with ASP.NET Core using MongoDB for NoSQL storage

What is grandnode2 written in?

grandnode2 is primarily written in C#. Its source is publicly available at https://github.com/grandnode/grandnode2, and it has 1,327 GitHub stars.