I suggest having a look at our various theme tutorials, as these detail all the common considerations to keep in mind when building a theme. The Layouts guide talks specifically about naming conventions, and you can also check out a collection of reference materials here.
Thank you so much for your reply. I checked the link you sent and I am still confused. Could you please help me clarify?
I am new to webpage development. That being said, I have 20+ years of experience with Linux kernel and Linux device drivers.
In the documents you linked, I do not see any interface definitions, data structures, or naming conventions that I must follow. Is this normal? Am I missing something?
As I said, I am new to webpage development, but this is my first time, in 20+ years, seeing any kind of integration that does not have a strict API or definitions. Do I understand this right?
I have the following problem: How do apps, that allow customer reviews on stores, know where to insert those reviews on the page once we install them? Don't we need some kind of API or naming convention to make sure the app knows where to insert its code?
Thanks in advance.
As you mentioned, Shopify doesn't require that themes use a specific naming convention. Also keep in mind that merchants have full control of their theme's HTML, so even if a naming convention was enforced, this can still be changed after the theme is installed. This means you likely won't be able to completely automate the process of adding your review container, but there are still options available. I've seen some apps provide a code snippet with instructions for the merchant to paste it in the theme code, and I've seen others offer developer help though a contact form. If you want to get more creative with it, I've seen some apps that attempt to guess the location of the container by anchoring it on different elements, and allow the merchant to try different positions until they find one they like.
If you have any more questions regarding usage of our APIs, such as ScriptTag for injecting the theme code, feel free to post them on this board. We also have a design board which is suited to questions related specifically to front-end.