Skip to main content

Theme architecture

A Shopify theme is a folder of files with very specific jobs. Understanding the distinction between a section, a block and a snippet is the difference between a ten-minute customisation and an afternoon of confusion.
Theme file structure

File structure of the VARAHI theme


The hierarchy


Sections vs. blocks vs. snippets

Rule of thumb. If a merchant would want to add, remove, reorder or duplicate it on a page, it is a section or a block. If it is an implementation detail, it is a snippet.

VARAHI’s section groups

The theme ships with 30 sections across the templates below.

The design system

Every visual decision in the theme resolves to a CSS custom property defined in snippets/css-variables.liquid.
Because every section consumes these variables rather than hard-coded values, changing one setting in the theme editor restyles the entire store consistently.
Merchant-overridable tokens are wrapped in Liquid ({{ settings.color_primary | default: "#00f0ff" }}). Fixed tokens — the deep surface ramp, the glass effects, the z-index scale — are constants you can still override in code if you need to.

JavaScript architecture

VARAHI ships two main script bundles, plus a few small conditional scripts.
The motion bundle is skipped entirely below 1024px. This is a deliberate performance decision, not a bug. See Performance.

Which files can you edit?

Next: colours

The three settings that rebrand the whole theme.