SimplCommerce is a free, open source e-commerce platforms project written in C# and released under Apache-2.0. It has 4,415 GitHub stars, 1,670 forks and 172 open issues, and was last pushed 3 months ago. On this registry it ranks #18 of 30 tracked projects in E-commerce Platforms, with 5 head-to-head comparisons available. It gained 1 stars over the last 3 tracked days.

What is SimplCommerce?

SimplCommerce is an open-source, cross-platform, modulith ecommerce system built on .NET that targets .NET developers and teams who want to own and extend a storefront rather than rent one.

What it is

SimplCommerce is a C# ecommerce application built on ASP.NET Core and distributed under the Apache-2.0 licence. Its distinguishing idea is the "modulith": a single deployable web application assembled from independent, modular components, rather than either a monolithic codebase with no internal boundaries or a distributed set of separately deployed services. The front end uses Angular 1.6.3, persistence goes through Entity Framework Core, identity is handled by ASP.NET Identity Core, and MediatR 7.0.0 carries domain events between modules. A high-level architecture diagram ships in the repository root as modular-architecture.png.

The concrete problem it solves is the gap between hosted ecommerce SaaS and building a store from scratch. A team that needs a shopping cart, catalog, and administration back office but cannot or will not hand its storefront, customer data, and business logic to a vendor can deploy SimplCommerce itself, extend it at the module level, and keep the whole stack on infrastructure the team controls. The thing it replaces is a licensed or subscription storefront product, along with the custom ASP.NET Core application a team would otherwise write to get the same modular structure.

Key capabilities

  • Modulith architecture: independent modules composed into one deployable application, documented in modular-architecture.png.
  • Storefront plus built-in administration back office reachable at /Admin.
  • SQL Server deployment through Entity Framework Core migrations, applied with Update-Database from the Package Manager Console in Visual Studio 2022 against .NET 8.
  • PostgreSQL deployment on Mac and Linux using .NET Core SDK 8.0 and the Entity Framework Core tools installed via dotnet tool install --global dotnet-ef.
  • Cross-platform bootstrap script simpl-build.sh, run as sudo ./simpl-build.sh or sudo bash simpl-build.sh on Ubuntu 18, followed by dotnet run from src/SimplCommerce.WebHost.
  • Docker image simplcommerce/ci-build, started with docker run -p 5000:80 simplcommerce/ci-build for testing purposes.
  • Hosted Azure demo with storefront at http://demo.simplcommerce.com and administration at /admin, plus documentation at docs.simplcommerce.com and a published roadmap wiki.

Who uses it and how

  • .NET developers on Windows who build the solution in Visual Studio 2022, point appsettings.json in src/SimplCommerce.WebHost at a SQL Server instance, apply migrations, and run SimplCommerce.WebHost as the startup project.
  • Teams on Mac and Linux that standardize on PostgreSQL, run simpl-build.sh, then dotnet run and open http://localhost:49206.
  • Small organizations that need a working back office for catalog and order administration rather than a bespoke admin panel, and are willing to operate the database themselves.
  • Contributors and evaluators: the repository carries the hacktoberfest topic, accepts issues and pull requests, and is funded through OpenCollective backers.
  • Anyone assessing fit before committing, using the public Azure demo storefront and /Admin account to inspect behavior first.

Getting started

Build from source: clone the repository, set the DefaultConnection string in appsettings.json under src/SimplCommerce.WebHost, run Update-Database for SQL Server or simpl-build.sh followed by dotnet run for Mac and Linux with PostgreSQL. For a quick test only, run docker run -p 5000:80 simplcommerce/ci-build, or use the hosted Azure demo instead of installing anything.

How it compares

The provided facts name no paid products that SimplCommerce replaces and no similar tools in this registry, so no contrast can be drawn on licence, hosting, data ownership, or cost model. On the evidence available, it stands alone in this registry.

When to use it — and when not to

A self-hoster must operate a database, either SQL Server or PostgreSQL, install and run Entity Framework Core migrations, and have the .NET 8 SDK available; there is no hosted production option in the facts, only a demo and a Docker image explicitly labelled for testing. The front-end stack is old, with Angular 1.6.3 and MediatR 7.0.0, and the README publishes working demo and built-in administrator credentials, [email protected] and 1qazZAQ!, which must be replaced before any real deployment. Anyone without .NET operations capacity, or wanting a managed SaaS storefront, should not pick it.

project readme (upstream, from github) — read inline

A simple, cross platform, modulith ecommerce system built on .NET Core Join the chat at https://gitter.im/simplcommerce/SimplCommerce

FOSSA Status

High level architecture

SimpleCommerce - Modulith architecture

Build Status

Build server Platform Status
Azure Pipelines All Build Status
Travis Linux / MacOS Build Status

Online demo (Azure Website)

Docker

For testing purpose only docker run -p 5000:80 simplcommerce/ci-build

Continuous deployment: https://ci.simplcommerce.com

Visual Studio 2022 and SQL Server

Prerequisites
  • SQL Server
  • Visual Studio 2022 and .NET 8
Steps to run
  • Update the connection string: Open appsettings.json in src/SimplCommerce.WebHost. The default is configured for a local SQL Server
    {
      "DefaultConnection": "Server=.;Database=SimplCommerce;Trusted_Connection=True;TrustServerCertificate=true"
    }
    
    If you are using Visual Studio LocalDB, change it to
    {
      "DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=SimplCommerce;Trusted_Connection=True;TrustServerCertificate=true;MultipleActiveResultSets=true"
    }
    
  • Ensure you have a database named SimplCommerce created in your SQL instance, or change the Database name in the connection string to match your environment.
  • Build the whole solution.
  • In Solution Explorer, make sure that SimplCommerce.WebHost is selected as the Startup Project
  • Open the Package Manager Console Window and make sure that SimplCommerce.WebHost is selected as the Default project. Then type "Update-Database" then press "Enter". This action will create the database schema.
  • In Visual Studio, press "Control + F5".
  • The back-office can be accessed via /Admin using the following built-in account: [email protected], 1qazZAQ!

Mac/Linux with PostgreSQL

Prerequisite
  • PostgreSQL
  • .NET Core SDK 8.0
  • Entity Framework Core Tools (dotnet tool install --global dotnet-ef)
Steps to run
  • Update the connection string in appsettings.json in SimplCommerce.WebHost.
  • Run the simpl-build.sh file by issuing the following command: "sudo ./simpl-build.sh". For ubuntu 18: "sudo bash simpl-build.sh"
  • In the terminal, navigate to "src/SimplCommerce.WebHost" and type "dotnet run" and then hit "Enter".
  • Open http://localhost:49206 in the browser. The back-office can be accessed via /Admin using the following built-in account: [email protected], 1qazZAQ!

Technologies and frameworks used:

  • ASP.NET Core
  • Entity Framework Core
  • ASP.NET Identity Core
  • Angular 1.6.3
  • MediatR 7.0.0 for domain event

Docs

https://docs.simplcommerce.com/

Roadmap

https://github.com/simplcommerce/SimplCommerce/wiki/Roadmap

How to contribute

  • Star this project on GitHub.
  • Report bugs or suggest features by creating new issues or adding comments to issues
  • Submit pull requests
  • Spread the word by blogging about SimplCommerce or sharing it on social networks
  • Donate to us

Contributors

This project exists thanks to all the people who contribute.

contributors

Backers

Love our work and help us continue our activities? [Become a backer]

Sponsors

Become a sponsor and get your logo on our README on Github with a link to your site. [Become a sponsor]

License

SimplCommerce is licensed under the Apache 2.0 license.

FOSSA Status

Frequently asked questions

Is SimplCommerce free to use?

SimplCommerce is open source under the Apache-2.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 SimplCommerce do?

A simple, cross platform, modulith ecommerce system built on .NET

What is SimplCommerce written in?

SimplCommerce is primarily written in C#. Its source is publicly available at https://github.com/simplcommerce/SimplCommerce, and it has 4,415 GitHub stars.