Creating a custom BigCommerce theme from scratch, without selling it in the theme store - bigcommerce

A client of mine wants to create their ecommerce site with BigCommerce as back-end. BigCommerce has lots of theme's available in their theme store. This client however does not want to be just another website using a certain theme, but have a theme unique to their company. You can build your own theme which would use your own config.php, something they use to set global variables in their templating engine.
However as far as I can read on their developers site the only way that you could create your own theme is if you then start selling it in the theme store, which of course would allow other companies to adopt this same theme against a certain price. Something my client doesnt want. They want to be unique.
So my question is: Can you create a custom bigcommerce theme from scratch, without selling it in the theme store?

Absolutely, however you can set up a config.php file and all that. You can simply start with any theme available in the current theme store, download the HTML, CSS, JS, Image, etc files and customize them to your liking. These are completely open ended.
You won't really miss anything this way, the only thing the config file does is set the default store settings when that theme is applied such as menu depth, fly out menus, display of weight, etc. All that can be adjusted manually by you or your client in the store settings!

So to answer my own question directly: No, you cannot create a theme from scratch without being a parter of bigcommerce and making your theme available in the theme store.
You can get close as #TheEks describes by simply choosing a theme (preferably the blueprint, available when going in to dev mode), and then overwriting whatever contents the html files have. You will need to check for updates to the bigcommerce theme yourself and implement those in your code. You will not be able to remove theme files, if you no longer use them, from the webdav server, only revert them to their original state. You can just ignore them of course.

Related

How to make a shopify app/theme extension which would get displayed in the brand's store UI?

We have an application which integrates with Shopify Clothing stores. We run our application in an iframe inside the shopify store where it interacts with the store's user.
Right now this application gets integrated with Shopify manually by inserting our script tag inside the store's product page. Can someone tell me how I can do this using a shopify app or theme extension?
Edit after David's answer
Is it also possible for me to get information about standard buttons in the theme like the Add to Cart button or Change Variants input. Ideally I would like to get the selector for these.
You would create a Shopify App that asks for permission to write ScriptTags. The Apps simply installs a script tag pointing to your App. So when the merchant installs your App, they get the script tag. Depending on what your App does in that iframe, you may need your Shopify App to provide other support, but that is not detailed in your OP, so I leave it at that.

Is Shopoify's Polaris used for styling themes or only for creating Custom/Public apps?

It's not clear to me whether a designer would adhere to Polaris specs if they were developing a custom theme for the Shopify store. Would they base it off of the file structure in Shopify sections, snippets, etc. or does Polaris provide something better?
Polaris is used only for Apps since it provides a similar style to the Shopify admin.
That said you can use it in a theme if you want to use similar styled elements as the admin, but coding a whole theme using Polaris will look a little back-end if you understand what I mean.
The idea of Polaris is to make Apps look similar to the Shopify admin design so that users are not faced with the color of the rainbow when they open a random app in their shopify panel.
All Polaris design guidelines and components are written for Apps and not themes.
So yes, you can use it on a theme, but No I don't recommend it.

How to overwrite the theme in shopify

Can any one help me on how to overwrite the theme in Shopify. Is there any option to create custom child theme under main theme and write custom codes into the activated child theme? Or there is another way to customized the theme.
There is no concept of child themes in shopify. Shopify refers to copies as duplicates, and a theme is either published or unpublished.
Before editing a themes structure make a duplicate and this is generally what should be worked on instead of the published(live) until all changes are done and the theme previews look ready.
If used to version control software(git) there are tools to automate the upload/download so you can work with your preferred editor locally.
So If you want customize the theme then just create a duplicate copy of the main the theme and do your all changes in the duplicate theme and see the all changes using theme preview option. After completing all of the changes, you can publish the duplicate theme and it will work as an active theme.

WHMCS - Editing purchased theme by overriding specific files

I want to customize the purchased WHMCS theme but I don't want to loose the changes when the theme is updated.
So, is there a way to create a child type of theme just like we do on Wordpress. If not, please advice the best method to do it in WHMCS.
WHMCS doesn't support clientarea template files overriding as in WP.
Use git to follow changes in the original purchased template, as described in Six template page

How to change in template through the Shopify application

I am trying to write a Shopify application and I want to add a section to the product page when the store owner installed my app. I tried this by adding a custom script tag in the shop template and this tag will load and inject my desired HTML into the page. It's work but it needs to force the store owner to change the product page template and its not user-friendly.
I see some apps in the Shopify app store that can change the product page after you install them without needs add any part to the product page template. How they do this work? I can't find the correct way in the Shopify documents.
You can change the Shopify theme of the shop using The API for Assets:
However as drip mentioned this is not a good idea:
If you change the theme auto-magically via code, you are looking for trouble. A lot of things can go wrong - simply you cannot cater for all themes and their changes over time! So you could possibly leave a broken page after the change. The e-shop owner won't be impressed! Actually a lot of the 1* reviews of apps are for that reason!
What would happen if the eshop owner removes your app? He won't know what code to remove.
So, most apps ask the user to add the app code. They provide detailed instructions of course.
Fyi, another problematic approach is the following:
Some apps may attempt to change the DOM "on the fly", by first locating an existing DOM element (a lot of theme-specific if statements to do that with any degree of success) and, then insert the app's DOM elements.
That's very messy and problematic as well, but at least you do not risk ruining the owner's theme files. In the worst case he can uninstall your app and he 'll be ok.