Convert Figma logo to code with AI

grandnode logograndnode

Open source, headless, multi-tenant eCommerce platform built with .NET Core, MongoDB, AWS DocumentDB, Azure CosmosDB, Vue.js.

1,892
765
1,892
218

Top Related Projects

ASP.NET Core eCommerce software. nopCommerce is a free and open-source shopping cart.

PrestaShop is the universal open-source software platform to build your e-commerce solution.

11,773

Prior to making any Submission(s), you must sign an Adobe Contributor License Agreement, available here at: https://opensource.adobe.com/cla.html. All Submissions you make to Adobe Inc. and its affiliates, assigns and subsidiaries (collectively “Adobe”) are subject to the terms of the Adobe Contributor License Agreement.

A free shopping cart system. OpenCart is an open source PHP-based online e-commerce solution.

A customizable, open-source ecommerce platform built on WordPress. Build any commerce solution you can imagine.

14,588

An open source eCommerce platform giving you full control and customizability. Modular and API-first. Multi-vendor, multi-tenant, multi-store, multi-currency, multi-language. Built using Ruby on Rails. Developed by @vendo-dev

Quick Overview

GrandNode is an open-source, cross-platform e-commerce solution built on ASP.NET Core. It provides a flexible and scalable platform for creating online stores, with features such as multi-store support, product management, and order processing.

Pros

  • Cross-platform compatibility (Windows, Linux, macOS)
  • Highly customizable and extendable architecture
  • Built on modern technologies (ASP.NET Core, MongoDB)
  • Active community and regular updates

Cons

  • Steeper learning curve compared to some other e-commerce platforms
  • Limited third-party integrations compared to more established solutions
  • Documentation could be more comprehensive
  • May require more technical expertise to set up and maintain

Getting Started

To get started with GrandNode:

  1. Ensure you have .NET Core SDK and MongoDB installed on your system.
  2. Clone the repository:
    git clone https://github.com/grandnode/grandnode.git
    
  3. Navigate to the project directory:
    cd grandnode/src/Web/Grand.Web
    
  4. Restore dependencies and run the application:
    dotnet restore
    dotnet run
    
  5. Open a web browser and go to http://localhost:5000 to access the GrandNode storefront.

For more detailed setup instructions and configuration options, refer to the official documentation on the GrandNode GitHub repository.

Competitor Comparisons

ASP.NET Core eCommerce software. nopCommerce is a free and open-source shopping cart.

Pros of nopCommerce

  • Larger community and more extensive documentation
  • More frequent updates and releases
  • Wider range of available plugins and themes

Cons of nopCommerce

  • Heavier resource usage, potentially slower performance
  • Steeper learning curve for beginners
  • Less flexibility for customization compared to GrandNode

Code Comparison

nopCommerce (C#):

public class ProductController : BasePublicController
{
    public virtual IActionResult ProductDetails(int productId, string attributes)
    {
        var product = _productService.GetProductById(productId);
        if (product == null || product.Deleted)
            return InvokeHttp404();
        // ...
    }
}

GrandNode (C#):

public class ProductController : BasePublicController
{
    public virtual async Task<IActionResult> ProductDetails(string productId)
    {
        var product = await _productService.GetProductById(productId);
        if (product == null)
            return InvokeHttp404();
        // ...
    }
}

Both repositories use similar MVC patterns, but GrandNode employs async/await for better performance in handling concurrent requests. nopCommerce uses integer IDs, while GrandNode uses string IDs, potentially offering more flexibility in ID generation.

PrestaShop is the universal open-source software platform to build your e-commerce solution.

Pros of PrestaShop

  • Larger community and ecosystem, with more themes and modules available
  • More extensive documentation and learning resources
  • Better multilingual support out of the box

Cons of PrestaShop

  • Heavier resource usage, potentially slower performance
  • Steeper learning curve for developers new to the platform
  • More complex codebase, which can make customizations challenging

Code Comparison

PrestaShop (PHP):

public function hookDisplayHeader($params)
{
    $this->context->controller->addCSS($this->_path.'views/css/front.css');
    $this->context->controller->addJS($this->_path.'views/js/front.js');
}

GrandNode (C#):

public override async Task InstallAsync()
{
    await this._settingService.SaveSettingAsync(new SomeSettings
    {
        Enabled = true,
        SomeOption = "Default Value"
    });
}

PrestaShop uses PHP and follows a more traditional hook-based architecture, while GrandNode is built with C# and ASP.NET Core, utilizing a more modern, task-based approach. PrestaShop's code tends to be more verbose, while GrandNode's code is often more concise due to C#'s language features.

11,773

Prior to making any Submission(s), you must sign an Adobe Contributor License Agreement, available here at: https://opensource.adobe.com/cla.html. All Submissions you make to Adobe Inc. and its affiliates, assigns and subsidiaries (collectively “Adobe”) are subject to the terms of the Adobe Contributor License Agreement.

Pros of Magento 2

  • Larger community and ecosystem, with more extensions and resources available
  • More comprehensive documentation and learning materials
  • Better suited for large-scale enterprise e-commerce solutions

Cons of Magento 2

  • Steeper learning curve and more complex architecture
  • Higher resource requirements and potentially slower performance
  • More expensive to host and maintain, especially for smaller businesses

Code Comparison

GrandNode (C#):

public class Product : BaseEntity, ILocalizedEntity, ISlugSupported, IStoreMappingSupported, IDiscountSupported<DiscountProductMapping>, ITierPriceSupported, IGroupPriceSupported
{
    public Product()
    {
        ProductCategories = new List<ProductCategory>();
        ProductManufacturers = new List<ProductManufacturer>();
    }
}

Magento 2 (PHP):

class Product extends \Magento\Catalog\Model\AbstractModel implements
    \Magento\Catalog\Api\Data\ProductInterface,
    \Magento\Catalog\Api\Data\ProductCustomOptionInterface
{
    protected function _construct()
    {
        $this->_init(\Magento\Catalog\Model\ResourceModel\Product::class);
    }
}

Both frameworks use object-oriented programming for product models, but GrandNode's approach appears more concise with multiple interface implementations in a single line. Magento 2's implementation is more verbose and uses separate lines for interface implementations.

A free shopping cart system. OpenCart is an open source PHP-based online e-commerce solution.

Pros of OpenCart

  • Larger community and ecosystem with more extensions and themes available
  • Simpler setup and configuration process, suitable for beginners
  • Lower system requirements, can run on shared hosting environments

Cons of OpenCart

  • Less scalable for large-scale e-commerce operations
  • Slower performance compared to GrandNode's ASP.NET Core architecture
  • Limited built-in features, often requiring paid extensions for advanced functionality

Code Comparison

OpenCart (PHP):

<?php
class ControllerProductProduct extends Controller {
    public function index() {
        $this->load->language('product/product');
        $this->load->model('catalog/product');
    }
}

GrandNode (C#):

public class ProductController : BasePublicController
{
    public async Task<IActionResult> ProductDetails(string productId)
    {
        var product = await _productService.GetProductById(productId);
        return View(product);
    }
}

GrandNode uses a more modern, strongly-typed approach with async/await patterns, while OpenCart relies on a traditional PHP MVC structure. GrandNode's architecture potentially offers better performance and maintainability for larger projects, but OpenCart's simplicity may be preferable for smaller stores or developers more comfortable with PHP.

A customizable, open-source ecommerce platform built on WordPress. Build any commerce solution you can imagine.

Pros of WooCommerce

  • Larger community and ecosystem, with more extensions and themes available
  • Better integration with WordPress, allowing for easier content management
  • More extensive documentation and learning resources

Cons of WooCommerce

  • Can be slower and less performant for large-scale e-commerce sites
  • Requires more frequent updates and maintenance due to WordPress dependencies
  • Less flexibility for customization compared to GrandNode's modular architecture

Code Comparison

WooCommerce (PHP):

add_action( 'woocommerce_before_main_content', 'woocommerce_output_content_wrapper', 10 );
add_action( 'woocommerce_after_main_content', 'woocommerce_output_content_wrapper_end', 10 );

GrandNode (C#):

public class ProductController : BasePublicController
{
    [HttpGet]
    public virtual async Task<IActionResult> ProductDetails(string productId)
    {
        var product = await _productService.GetProductById(productId);
        return View(product);
    }
}

WooCommerce uses WordPress hooks and actions for templating, while GrandNode employs a more traditional MVC structure with controllers and views. GrandNode's approach offers more flexibility for complex e-commerce scenarios, but WooCommerce's integration with WordPress can be advantageous for content-heavy sites.

14,588

An open source eCommerce platform giving you full control and customizability. Modular and API-first. Multi-vendor, multi-tenant, multi-store, multi-currency, multi-language. Built using Ruby on Rails. Developed by @vendo-dev

Pros of Spree

  • Larger community and more contributors, leading to better support and more frequent updates
  • More extensive documentation and resources available for developers
  • Wider range of extensions and plugins available in the ecosystem

Cons of Spree

  • Steeper learning curve due to its more complex architecture
  • Potentially slower performance compared to GrandNode, especially for larger stores
  • May require more customization for specific business needs

Code Comparison

Spree (Ruby):

Spree::Config.configure do |config|
  config.use_static_preferences!
  config.currency = "USD"
  config.checkout_zone = "North America"
end

GrandNode (C#):

public void ConfigureServices(IServiceCollection services)
{
    services.AddGrandNode();
    services.Configure<GrandNodeConfig>(Configuration.GetSection("GrandNode"));
}

Both frameworks offer configuration options, but Spree uses a Ruby-based DSL, while GrandNode uses C# and dependency injection. Spree's configuration is more focused on e-commerce specifics, while GrandNode's example shows a more general application setup.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

This repository contains a legacy version of GrandNode.

Urgent info: We do not currently maintain the legacy version — we provide limited support for bug fixing until the end of 2022 only. All our resources are focused on GrandNode 2.0 development.

GrandNode v2 is our own open-source e-commerce platform based on .NET Core 5.0 and MongoDB. Written from the scratch.

New updates and improvements will not be available on the legacy version. For updates please look at the GrandNode v2 repository - https://github.com/grandnode/grandnode2.