Beauty Affairs HK

Developer guide

Where to start when you change the theme code, whether you are a person or an agent.

PageRead it when
Local developmentYou are setting up, or the dev server is misbehaving
Codebase mapYou need to find where something lives
EntrypointsYou need the bundle that a given Liquid file loads
Common changesYou are adding a section, an entrypoint or a cart element
ConventionsYou are about to open a pull request

Read this first

This is one repository. It is a Shopify theme with a Vite build, not a monorepo and not an app, and it has no server and no database.

The theme started as Prestige 10.0.2 by Maestrooo and has been modified for years. A file in sections/, snippets/ or templates/ may be unchanged vendor code, customised code, or unused code. Check before you edit. The most common mistake in this repository is editing a file whose name matches what you want when nothing renders it.

All new code goes in src/, and Vite compiles it. .shopifyignore excludes src/, so Shopify never receives it. Shopify receives the compiled output in assets/ plus the Liquid files.

Before your first change

nvm use                 # Node v24.4.0, per .nvmrc
npm install             # also installs the pre-commit hook
npm run typecheck       # tsc --noEmit, should pass cleanly

Then read Local development and start the dev server.

The state of the theme

shopify theme check currently reports about 4,200 offences across 318 files. Your change did not cause them. Most come from locale files and from templates for apps the store no longer uses.

Do not try to fix all of them. Check that your change adds no offence of a type that was not already there, and read Legacy and unused code before deleting anything that looks unused.

Two rules

Make merchant-facing changes configurable. When you add behaviour, add section schema settings to turn it on and off and to configure it. Store staff should be able to change wording, a threshold or an image without a developer. AGENTS.md in the repository root makes this a project requirement.

Run Theme Check after touching a schema. A malformed schema breaks the theme editor for the whole store, and the failure may not show until a deploy. npm run lint reports problems, and npm run lint:fix applies the safe fixes.

On this page