Giter Club home page Giter Club logo

smartstore / smartstore Goto Github PK

View Code? Open in Web Editor NEW
1.1K 1.1K 388.0 104.28 MB

A modular, scalable and ultra-fast open-source all-in-one eCommerce platform built on ASP.NET Core 7

Home Page: http://www.smartstore.com/

License: GNU Affero General Public License v3.0

C# 66.74% HTML 12.98% CSS 1.29% JavaScript 13.63% SCSS 5.18% Liquid 0.14% Batchfile 0.01% PowerShell 0.01% Shell 0.01% Dockerfile 0.01%
asp-net aspnet aspnet-core aspnetcore azure bootstrap cms cms-framework composable-commerce csharp dotnet dxp e-commerce ecommerce ecommerce-platform headless headless-commerce rest-api shop shopping-cart

smartstore's Introduction

Smartstore

Smartstore

Ready. Sell. Grow.

A modular, scalable and ultra-fast open-source all-in-one eCommerce platform built on ASP.NET Core 7.

Try OnlineForumMarketplaceTranslations


Smartstore Demoshop

Smartstore is a cross-platform, modular, scalable and ultra-fast open source all-in-one eCommerce platform based on ASP.NET Core 7, Entity Framework, Vue.js, Sass, Bootstrap and more.

Smartstore includes all the essential features to create multi-language, multi-store, multi-currency shops targeting desktop or mobile devices and enables SEO-optimised, rich product catalogs with support for unlimited number of products and categories, variants, bundles, datasheets, ESD, discounts, coupons and much more.

A comprehensive set of tools for CRM & CMS, Sales, Marketing, Payment & Shipping Handling etc. makes Smartstore a powerful all-in-one solution that meets all your needs.

Smartstore delivers a beautiful and configurable shop frontend out-of-the-box, built with a high level design approach, including components like Sass, Bootstrap and others. The included Flex theme is modern, clean and fully responsive, giving shoppers the best possible shopping experience on any device.

The state-of-the-art architecture of Smartstore - with ASP.NET Core 7, Entity Framework Core 7 and Domain Driven Design approach - makes it easy to extend, extremely flexible and basically fun to work with ;-)

 

Technology & Design

  • State-of-the-art architecture with ASP.NET Core 7, Entity Framework Core 7 and domain-driven design
  • Cross-platform: run it on Windows, Linux, or Mac
  • Supports Docker out of the box for easy deployment
  • Composable, extensible and highly flexible due to modular design
  • Highly scalable with full page caching and web farm support
  • Powerful theme engine allows you to create or customise themes & skins with minimal effort thanks to theme inheritance
  • Point&Click theme configuration
  • Liquid template engine: highly flexible templating for emails and campaigns with auto-completion and syntax highlighting
  • Html to PDF converter: creates PDF documents from regular HTML templates, radically simplifying the customisation of PDF output
  • Consistent and sophisticated use of modern components such as Vue.js, Sass, Bootstrap & more in the front and back end.
  • Easy shop management thanks to modern and clean UI

 

Key Features

Smartstore Screenshots

  • Multi-store support
  • Multi-language and full RTL (Right-to-Left) and Bidi(rectional) support
  • Multi-currency support
  • Product bundles, variants, attributes, ESD, tier pricing, cross-selling and more
  • Sophisticated marketing & promotion capabilities (gift cards, reward points, discounts of any kind, and more)
  • Reviews & Ratings
  • Media Manager: powerful and lightning fast media file explorer
  • Rule Builder: powerful rule system for visual business rule creation with dozens of predefined rules out-of-the-box
  • Search framework with faceted search support. Ultra-fast search results, even with millions of items!
  • Extremely scalable through output caching, REDIS & Microsoft Azure support
  • Tree-based permission management (ACL) with inheritance support
  • Sophisticated import/export framework (profiles, filters, mapping, projections, scheduling, deployment... basically everything!)
  • CMS Page Builder: Create compelling content that drives sales. No coding required thanks to a powerful WYSIWYG editor using the revolutionary CSS grid system
  • Blog, forum, polls, custom pages & HTML content etc.
  • CMS Menu Builder: visual manager for all kinds of menus. Modify existing menus or create your own and place them anywhere you want.
  • Modern, clean, SEO-optimized and fully responsive Bootstrap-based theme
  • Support for hierarchical SEO slugs, e.g.: samsung/galaxy/s22/32gb/white
  • Trusted Shops pre-certification and full EU-GDPR compliance
  • 100% compliant with German law
  • Sales-, Customer- & Inventory Management
  • Comprehensive CRM features
  • Powerful layered shop navigation
  • Numerous payment and shipping providers and options
  • Wallet: allows full or partial payment of orders via credit account
  • TinyImage: achieves ultra-high image compression rates (up to 80%!) and enables WebP support
  • Preview Mode: virtually test themes and stores more easily
  • RESTful WebApi (coming soon)

 

Getting Started

System requirements

Supported operating systems

  • Windows 10 (or higher) / Windows Server 2012 R2 (or higher)
  • Ubuntu 14.04+
  • Debian 11+
  • Mac OS X 10.11+

Supported database systems

  • Microsoft SQL Server 2008 Express (or higher)
  • MySQL 8.0+
  • PostgreSQL 11+
  • SQLite 3.31+

Upgrade from Smartstore.NET 4.2

Smartstore 5 is a port of Smartstore.NET 4 - based on the classic .NET Framework 4.7.2 – to the new ASP.NET Core 7 platform. Smartstore instances based on classic ASP.NET MVC can be upgraded seamlessly. To upgrade, all you need to do is replace the application files on your server - except for the App_Data directory - and all your data will automatically be transferred to the new system. See the documentation for detailed information on installing or upgrading your store.

ℹ️ Upgrading from versions older than 4.2 is not possible. Therefore, you should migrate Smartstore.NET to version 4.2 first and then upgrade to Smartstore 5.

Visual Studio

  • Clone the repository using the command git clone https://github.com/smartstore/Smartstore.git and checkout the main branch.
  • Download Visual Studio 2022 (any edition) from https://www.visualstudio.com/downloads/
  • Open Smartstore.sln and wait for Visual Studio to restore all NuGet packages
  • Make sure Smartstore.Web is the startup project and run it

Repository Structure

  • Smartstore contains common low-level application-agnostic stuff like bootstrapper, modularity engine, caching, pub/sub, imaging, type conversion, IO, templating, scheduling, various utilities, common extension methods etc.
  • Smartstore.Data contains database providers
  • Smartstore.Core contains application specific modules like catalog, checkout, identity, security, localization, logging, messaging, rules engine, search engine, theme engine, migrations etc.
  • Smartstore.Web.Common contains common web features like custom MVC infrastructure, bundling, TagHelpers, HtmlHelpers etc.
  • Smartstore.Modules contains all module/plugin projects
  • Smartstore.Web is the entry host project that contains controllers, model classes, themes, static assets etc.

 

Build Smartstore

Option 1 - by publishing the entry host project

  1. Open the Smartstore solution in Visual Studio 2022
  2. Use Release configuration
  3. (Re)build the solution
  4. Publish host project Smartstore.Web

Option 2 - by running a build script

Run the build script corresponding to your target platform in the build directory: build.{Platform}.cmd. The resulting build will be placed in the build/artifacts/Community.{Version}.{Platform} directory. A zip archive in build/artifacts/ is created automatically.

By default, the build script produces a platform-specific, self-contained application that includes the ASP.NET runtime and libraries, the Smartstore application and its dependencies. You can run it on any machine that doesn't have the .NET runtime installed.

Smartstore uses Nuke (https://nuke.build/) as its build automation solution, which makes it easy to customize the build process by editing src/Smartstore.Build/Smartstore.Build/Build.cs.

About the "src/Smartstore.Web/Modules" directory

While building the solution, all modules in src/Smartstore.Modules/ are detected, compiled and placed in the src/Smartstore.Web/Modules/ directory. The application runtime uses this directory as a source from which modules are loaded dynamically. During development, however, the "Modules" directory is irrelevant. You can safely delete it at any time.

Creating Docker images

To create a Docker image, run build/dockerize.{Platform}[.nobuild].sh.

dockerize.linux.sh

Creates a Debian Linux base image including the complete ASP.NET runtime, builds the solution and publishes a framework-dependent application inside the Linux container. It also installs the native wkhtmltopdf library needed to generate PDF files.

dockerize.linux.nobuild.sh

Much faster, but requires that the application has already been built and is located in build/artifacts/Community.{Version}.linux-x64. Creates a Debian Linux base image with only the ASP.NET runtime dependencies and copies the build artifact. It also installs the native wkhtmltopdf library needed to generate PDF files.

dockerize.windows.nobuild.sh

Creates a Windows Nano Server base image with only the ASP.NET runtime dependencies and copies the build artifact. Requires that the application has already been built and is located in build/artifacts/Community.{Version}.win-x64. It also requires that the Docker engine is running a Windows image.

Creating Docker containers

To create a ready-to-run Docker container with a database server run compose.{DbSystem}.sh.

compose.mysql.sh

Creates a composite Docker container containing the smartstore application image and the latest MySql image.

compose.sqlserver.sh

Creates a composite Docker container containing the smartstore application image and the latest MS SQL Server image.

 

Try it online

We have set up a live online demo for you to test Smartstore without a local installation. Get a first impression and test all available features in the frontend and backend. Please note that the backend demo is shared and other testers can modify data at the same time.

 

License

Smartstore Community Edition is released under the AGPL license.

Add a star to our new repository to stay up-to-date, get involved or just watch how we're doing. Learn about the latest developments, actively participate and don't miss out on new releases.

smartstore's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

smartstore's Issues

Friendly urls generator issue

It generates not friendly urls in case of Cyrillic characters. Can it be fixed to add just a language symbols at the end?
for example:
product title: some product title
product title(en): some product title
product title(ru): some product title on russian
so the urls will be:
some-product-title
some-product-title-1
but for russian it's: -product- (skipped cyrillic words)

For manufacturer it's possible to leave only default and it goes like ../en/manufactureName or ../ru/manufactureName

In some way it would be great if urls for product generated like:
en/some-product-title
ru/some-product-title
or
some-product-title-en
some-product-title-ru
and you can use just general SEO field

Roadmap

V3.1

  • BS4 in backend
  • Enhanced checkout

V3.5

  • Media Manager
  • Simple CMS
  • Variant bulk editing

Future

  • ASP.NET Core
  • New variant & attribute system
  • Multi tenancy
  • Multi vendor
  • Product dimensions > price & shipping calculation
  • New backend theme
  • Rental products
  • Dynamic pricing
  • Virtual categories aka predefined facets
  • Widget layers
  • Import+
  • Multi warehousing
  • Workflows
  • Region specific prices
  • Drop shipping
  • Order subscriptions
  • Multi wishlist

Support language dependent formatting of currency symbol

I realized that smart-store does not support localization for currency code.

In my case, I've two languages installed in my store Arabic and English.

When the store in English currency should be BHD & when it is in Arabic currency symbol should be د.ب.

Is there any way to resolve this issue?

Paypal Shipping, Tax Details

Hi
In Order Details, it shows Product Amount ($1.00), Tax ($0.05), Shipping ($2.00) as configured, which is correct. But, when it is processed with Paypal, The total amount is sent to Paypal as is 3.05 (1 + 0.05 + 2).

When we login to paypal, it doesn't show Tax & Shipping charges separately as 0.05 and 2.00. It shows only total charge $3.05, Tax 0.00, Shipping 0.00.

What I have to do, if order amount to send to paypal with Amount, Tax, Shipping, Handling etc.?

Thank you
Venky

Migrated from CodePlex: Issue smartstore/SmartStoreNET#364 from venkigun, on 4/29/2014 10:13:19 PM

change priority Razor View Engine plugin with Themes

It is now in the form below

~/Plugins/PineStore.MyPlugin/Views/MyPlugin/Layouts/PublicInfo.cshtml
~/Plugins/PineStore.MyPlugin/Views/MyPlugin/PublicInfo.cshtml
~/Plugins/PineStore.MyPlugin/Views/Shared/Layouts/PublicInfo.cshtml
~/Plugins/PineStore.MyPlugin/Views/Shared/PublicInfo.cshtml
~/Themes/Beauty/Views/MyPlugin/Layouts/PublicInfo.cshtml
~/Themes/Beauty/Views/MyPlugin/PublicInfo.cshtml
~/Views/MyPlugin/Layouts/PublicInfo.cshtml
~/Views/MyPlugin/PublicInfo.cshtml
~/Themes/Beauty/Views/Shared/Layouts/PublicInfo.cshtml
~/Themes/Beauty/Views/Shared/PublicInfo.cshtml
~/Views/Shared/Layouts/PublicInfo.cshtml
~/Views/Shared/PublicInfo.cshtml

I've made a widget. and I want to create template.
but do not change view in thems.
Better Razor View Engine

~/Themes/Beauty/Views/MyPlugin/Layouts/PublicInfo.cshtml
~/Themes/Beauty/Views/MyPlugin/PublicInfo.cshtml

~/Plugins/PineStore.MyPlugin/Views/MyPlugin/Layouts/PublicInfo.cshtml
~/Plugins/PineStore.MyPlugin/Views/MyPlugin/PublicInfo.cshtml
~/Plugins/PineStore.MyPlugin/Views/Shared/Layouts/PublicInfo.cshtml
~/Plugins/PineStore.MyPlugin/Views/Shared/PublicInfo.cshtml
~/Views/MyPlugin/Layouts/PublicInfo.cshtml
~/Views/MyPlugin/PublicInfo.cshtml
~/Themes/Beauty/Views/Shared/Layouts/PublicInfo.cshtml
~/Themes/Beauty/Views/Shared/PublicInfo.cshtml
~/Views/Shared/Layouts/PublicInfo.cshtml
~/Views/Shared/PublicInfo.cshtml

or

~/Themes/Beauty/Plugins/PineStore.MyPlugin/Views/MyPlugin/Layouts/PublicInfo.cshtml
~/Themes/Beauty/Plugins/PineStore.MyPlugin/Views/MyPlugin/PublicInfo.cshtml

How to setup SmartStoreNet Project on Azure ?

It would be nice to have some documentation on how to setup SmartStore.net to Azure Web App, it does work partially for the main project, but the administration project would not get installed correctly.

Any suggestions welcome..

Unable to login the return user

After the user registration, if the user wants to login into the application it leaves the message as login was unsuccessful. even username and password both are correct.

Installation Issues

On running the project in IIS, I am getting the following error :

A delegate registered to create instances of 'SmartStore.Core.Data.IDbContext' returned null.

I created a Settings.txt file (... SmartStoreNET-3.x\SmartStoreNET-3.x\src\Presentation\SmartStore.Web\App_Data\Tenants) in the tenants folder of app_data with the following content :

AppVersion: 3.1.5.0
DataProvider: sqlserver
DataConnectionString: Data Source=localhost;Initial Catalog=SmartStore;Integrated Security=False;Persist Security Info=False;User ID=;Password=;Enlist=False

I am getting a similar error.

Kindly help to resolve this error.

Thanks.

Product Filter: Ratings throw exception on selection

linqCatalogSearchService.Search() - Line 738

_query.Count()

Controller: Catalog, Action: Category
An error occurred while reading from the store provider's data reader. See the inner exception for    details.
Expression evaluation caused an overflow. [ Name of function (if known) = ] 

campaigns must be role-focused

It would be far more efficient to have (at the very least) the ability to filter intended recipients of a "mass" email to one or many roles. Better yet would be to have a series of filters like that which are available on other screens. Nothing
irks clients more than offers that are not suitable to them.

Case-in-point: i received so many offers for magazines etc from Microsoft that ultimately were only for US-based recipients (i being in Canada) that i quickly flagged them as spam, never to be seen again.

Migrated from CodePlex: Issue smartstore/SmartStoreNET#418 from wdcurry, on 7/18/2014 3:40:31 PM

Add multi-vendor feature

SmartStoreNET is missing multi-vendor feature. I think by adding this feature would make it one of the most complete eCommerce platforms.

paypal fees are incomplete

Paypal, like many other such providers, charge a % AND a flat fee. Currently we only have one area to enter fees for a payment. So, we either jack up the % past what paypal charges and appear to "fleece" our clients, or we absorb the flat fee.
Either way, this is easily correctable with one more attribute: Flat fee ____

cheers, drew..

Migrated from CodePlex: Issue smartstore/SmartStoreNET#444 from wdcurry, on 8/2/2014 3:02:48 PM

Optimize/Simplify Checkout Process

  • Show rich popup after product was added to cart (instead of the simple notification)
  • Simplify address entry
  • Enable skipping of shipping address entry
  • B2B: companies should be able to place orders without providing a first and last name

Wrong Absurd behavior with product images

we notice a very strange behavior in our product images. We upload a product image which is displayed in the preview as normal but when zooming in we see trucks or tools like wrenches. The behavior is sporadic, sometimes the problem occures with the Size parameters ?size=600 as soon as it is changed the image is ok, somethimes is the url withouth size param wrong but with size param added we see the right image.

Here it is e.g:
URL Shows wrong image here should be our product:
https://sambol.de/media/image/1071/ultraschall-reinigungsgerat-general-sonic-serie-modell-gs6h.jpg
With parameters we then get to see our product: https://sambol.de/media/image/1071/ultraschall-reinigungsgerat-general-sonic-serie-modell-gs6h.jpg?size=600

Can someone explain this to me?

Order Confirm/Shipped Mail

While placed order customer received order confirmation.In that Header Image/Product Images are not showing.refer screen
image

image

GDPR compliance

  • Display Cookie consent on first request (no separate plugin anymore)

  • Privacy tab in MyAccount

    • Show personal data (reviews, comments, PMs etc.) - right of access to personal data
    • Export data (Right to data portability)
    • Forget Me - Right to be forgotten (which actually anonymizes data if user has made a purchase previously)
      • Anonymize (right to be anonymous)
      • Delete personal data
      • Delete content
  • Show privacy policy checkbox in all pages/sections that contain forms (Registration, Newsletter, ContactUs, Review, Comment, Forum etc.)

  • Make FirstName and LastName fields optional during simple registration. They should be mandatory only during checkout.

  • Modify Google Analytics script code

  • AddThis widget > TBD

  • Cookie Manager. (???) Let user (dis)allow performance cookies (Google Analytics, Tag Manager, Remarketing etc.)

New setting defaults:

  • Only registered and verified customers should be allowed to write reviews, leave comments etc. This way it's not necessary for the user to opt-in to privacy policy anymore.

Futher readings:

Allow definition of initial values for some product properties

Is there a place where the default values are stored. For e.g. when you turn on Inventory racking the default value for the inventory is 10,000. Would like to set it up as a smaller number.

Also if there is only one item in the drop down list, is it possible to default it to that item rather than having the customer select the item. For e.g. if only 1 country is published, we would like the drop down have that country selected, (see Issue smartstore/SmartStoreNET#902)

Thanks,

Invalid Column Name CreatedOn

`protected override DbDataReader ExecuteDbDataReader(CommandBehavior behavior)
{
if (!IsCacheable)
{
var result = _command.ExecuteReader(behavior); --error here

			if (!_commandTreeFacts.IsQuery)
			{
				_cacheTransactionInterceptor.InvalidateSets(Transaction, _commandTreeFacts.AffectedEntitySets.Select(s => s.Name));
			}

			return result;
		}

		var key = CreateKey();

		object value;
		if (_cacheTransactionInterceptor.GetItem(Transaction, key, out value))
		{
			return new CachingDataReader((CachedRecords)value);
		}

		using (var reader = _command.ExecuteReader(behavior))
		{
			var queryResults = new List<object[]>();

			while (reader.Read())
			{
				var values = new object[reader.FieldCount];
				reader.GetValues(values);
				queryResults.Add(values);
			}

			return HandleCaching(reader, key, queryResults);
		}
	}`

how to enable web api cors in smartstore.webapi project

Hello,I am using smartstore.net 2.x and today I installed the webapi plugin.the web api's project is smartstore.webapi, I add a action for test.the code is below:

namespace SmartStore.WebApi.Controllers.Api
{
//[WebApiAuthenticate]
public class HomeController : ApiController
{
[HttpPost]
public string Index([FromBody]string android)
{
ApiResult result = new ApiResult();
result.Code = 0;
result.Data = "webapi";
result.Msg = "hello api";
return JsonConvert.SerializeObject(result);
}
}
public class ApiResult
{
///


/// 1:表示成功;其他表示失败,msg表示错误信息;data表示数据
///

public int Code { get; set; }
public object Data { get; set; }
public string Msg { get; set; }
}
}
and I create an html which contains an ajax request to test the api in chrom,because my develope envirentment is android studio,and genymotion simulator,virtual box.so the simulator's ip is 192.168.4.2,my ajax code like :
$.ajax({
type:"post",
url: "http://192.168.4.2:9020/api/v1/home/index",
data:{"android":"niufw"},
dataType:"JSON",
sucess: function(data)
{
alert(data.Msg);
},
err: function()
{
alert("error");
}

});
when I run it,the chrome complain this,
"Failed to load http://192.168.4.2:9020/shundi/orderapi/gethotelsbypage: Redirect from 'http://192.168.4.2:9020/shundi/orderapi/gethotelsbypage' to 'http://192.168.4.2:9020/shundi/orderapi/gethotelsbypage?AspxAutoDetectCookieSupport=1' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:9020' is therefore not allowed access."

my web api host in iis and port is 9020

can it be configured in the webapi project's WebApiConfigurationProvider.cs file, I have no idea,can anyone help me or give any suggetions,thank you first!

smtp settings for authentication?

As per the title, my current version of smartstore does not have this option. Am i missing something, somewhere? thanks kindly..

ps: i am a wee bit confused with the email settings as i am actually getting emails from the store and yet the test function is showing it is not working, odd ;)

Migrated from CodePlex: Issue smartstore/SmartStoreNET#412 from wdcurry, on 7/12/2014 3:19:38 PM

Postgresql support

It seems that PostgreSQL is not supported yet, but after little investigation it's quite possible that it will not require too many efforts. With minor modifications I was able to install SmartStore on fresh PostgreSQL instance and perform basic operations (make orders, do some administration etc). Didn't find anything that does not work so far, but didn't try too hard also.

Given that full version of SQL Server costs quite some money and free edition has limitations which might be considered serious in many cases (limited cpu cores, consumed RAM, database size) - adding support for free database without limitations might seriously increase the usefullness of the product.

Even more, SQL Server (including SqlCE) requires Windows machine, while PostgreSQL might run on linux one, which is a huge plus by itself, but also might allow to run whole product on Mono, because Entity Framework, ASP.NET MVC are already available under Mono. This possibility to be able to run whole product on a linux server is quite promising, and dependency on SQL Server products is the most serious obstacle.

Suggestion about menu bar

I suggest a behavior for menu bar to be relocated in the header bar as hamburger/drop-down-menu (just left to the shopping cart button) when scrolling down a long page (somehow a behavior like this: http://www.emag.ro/homepage or more obvious here: http://www.cel.ro )
Also I think that may be useful to have the logo in the header bar (just for knowing where we are; there are some situations of stores operated by the same owner, with enough consistent look between, but with slightly different offering, e.g. http://www.cel.ro versus http://www.dc-shop.ro (both operated by same owner, first is modernized, second not))

Mobile verification while registering

Guys I feel its priority enhancement.

Like amazon can we add mobile as mandatory to register,and make email optional.
Also we must enable two step security feature.
Also add OTP to verify delivery, i mean our site should send OTP to customer, customer must show/share OTP to verify customer.

need "old price" column in attribute of product..

hello sir,
you have done brilliant job. and thanks for putting it to opensource.
i have some request to added some features is that

when we add some attributes in product at that time we need to add one more column that is "old price" of that attribute and show it on the client side when they change attribute.

i.e.
product Tshirt that have two attributes

black Tshirt - oldprice 200$ price 175$
white Tshit - oldprice 150$ price 125$

hope you get it what i am trying to say.

thanks in advance

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.