Awesome that nopCommerce is going up very nicely and getting versatile steadily. And going forward, we'll definitely see many different features coming along. However I think there are a few things that need to be improved.

One such thing is the introduction of Theme Settings.

Right now there are some settings like 'Picture zoom', Image and thumbnail sizes for various pages. I very much feel that these are GUI specific settings that work independent of core eCommerce store. Right now they are set specific to the default theme. How about make these settings configurable by themes rather than the core.

Now some themes may provide features like Picture Zoom while others may not. Similarly there may be some UI features which are provided by a theme like say Different types of layouts, different color palettes etc. Right now one way to manage these can be a vendor specific plugin for managing themes. However a generic template might be beneficial.

If we provide an option in the admin called Theme Settings that's shown only if the active theme contains say ThemeConfig.cshtml file. This file will contain a form with theme specific settings that when submitted will be saved by nopCommerce (may be as a serialized dictionary in the database). There can also be a ThemeStartup.cshtml file that, if present, is loaded whenever a theme is activated, so theme can save preset settings like Picture Sizes, Default Color, Picture Zoom or not etc.

These settings can then be resolved within theme files to leverage those values and use those settings. This may provide several benefits.

1. Vendors may not need to create plugins to manage theme settings.
2. The settings which are UI specific will be removed from the core and be delegated to themes.
3. Theme vendors will be able to introduce any many features other that Picture Zoom effect all controllable from Theme Settings page. So will streamline UI specific settings.