Repository navigation
Manual Setup
Set the Layout up on your shop yourself. Follow these steps in order, or let an agent do it: Install with AI.
Fork selldone-custom-layouts/official-senso on GitHub, then clone your fork with its submodules (the shared Selldone code in modules/*):
git clone --recurse-submodules https://github.com/<you>/<your-repo>.git
cd <your-repo>
git remote add upstream https://github.com/selldone/storefront.git
git remote set-url --push upstream DISABLED-
originis your repository. -
upstreamis Selldone's official storefront, used to fetch updates only. - Never commit inside
modules/*. A fix there is kept as a patch inpatches/.
npm run setup # Selldone's modules
npm install --forceNode.js 20 or newer. On Windows use Git Bash for the shell scripts.
Edit .env. These are public values, read only in development. In production Selldone gives the Layout the shop that runs it.
VITE_APP_SAMPLE_SHOP_NAME=<your shop handle>
VITE_APP_SAMPLE_SHOP_CUSTOM_HOME=shop
VITE_APP_SAMPLE_DEFAULT_CURRENCY=USD
VITE_APP_SAMPLE_DEFAULT_COUNTRY=US
VITE_APP_SAMPLE_DEFAULT_LANGUAGE=en
VITE_APP_DEV_SERVER_PORT=9133VITE_KALIO_ACCOUNT=desk (in .env and .env.development.local) shows the buyer account Senso uses: a side rail of sections ("desk"). Releases set it themselves.
npm run serveOpen http://localhost:9133. Check the home, a category, a product page, the cart and the account against your shop.
- If a section is missing or looks empty, see Shop Requirements. Senso hides a section that has nothing to show.
- If a category sits under "More" in the header, its name matches no family. See Customize.
-
Name:
BRAND.nameincomponents/kalio/kalio-brand.ts. Set it tonullto show your shop's own title. -
Families:
FAMILIESincomponents/senso/senso-families.ts. -
Photos: put them in
assets/senso/photos/with the names incomponents/senso/senso-photos.ts. Remove the sample category photosassets/senso/wide-*.webpif they do not fit your categories. -
Colours:
components/senso/senso-theme.settings.ts. See Theme and colours.
Customize explains each one.
In manifest.json:
{
"package": "mybrand-electronics",
"name": "Mybrand Electronics",
"version": "1.0.0",
"storefront": true,
"backoffice": false,
"description": "One sentence about your storefront."
}-
package: lowercase, unique to you, and permanent after the first upload. -
name: at least 8 characters. -
version: new for every upload, never reused.
-
Build and Upload:
bash scripts/release.sh 1.0.0 desk. - Go Live: attach the version to your shop, make the domains inherit it, and set Home to the shop page.
git fetch upstream main --tags --prune
git merge --no-ff upstream/mainResolve conflicts by keeping Senso's templates and Selldone's logic. Then re-apply the patches if the submodules changed:
git -C modules/components apply ../../patches/modules-components.kalio.patch
git -C modules/translate apply ../../patches/modules-translate.kalio.patchA patch that no longer applies must be redone by hand, not skipped.