Imported from mitanshusurana/Gemera_ecomm (
AGENTS.md). Install upstream withnpx skills add mitanshusurana/Gemera_ecomm. Copyright stays with the author.
Working in this repository
Read README.md first for the layout. This file records the conventions an agent or contributor must keep.
Storefront (src/)
- Angular 20, standalone components, inline
template:strings, signals for state,ChangeDetectionStrategy.OnPushon presentational components. Routes are lazyloadComponententries insrc/app/app.routes.ts. - Tailwind CSS v4.
src/styles.cssimports Tailwind, loadstailwind.config.jsvia@config, and defines the shared classes. There is no@tailwind base/components/utilitiesand no PostCSStailwindcssplugin; the.postcssrc.jsonuses@tailwindcss/postcss. - Design language:
DESIGN.md(Apple-style canvases, ink text, hairlines, pill buttons) with#D4AF37gold as the only action colour. Reusebtn-apple-pill,btn-apple-pill-secondary,btn-outline,input-field,store-utility-card,badge,active-pressbefore writing new button or card markup. No gradients as backgrounds and no shadows on cards, buttons or text;product-surface-shadowis the one product shadow. - Layout:
app.tsrenders the only<main>and pads itpt-[96px]for the fixed header. Pages use<div>/<section>roots and never add their own header offset. - Colours: use the hex tokens already in use (
#1d1d1fink,#6e6e73/#7a7a7amuted,#e0e0e0hairline,#f5f5f7parchment,#fafafcpearl,#1c1c1edark tile). Legacygold-*/diamond-*scales still resolve (they map onto the same ramp) but new code should use the hex tokens or the named tokens intailwind.config.js. - API base URL comes from
environment.apiUrl; HTTP calls go through the services insrc/app/servicesand the interceptors insrc/app/interceptors. Do not readwindow/documentwithout a platform check: the app is SSR. - The repository is public. Never commit secrets;
.env*files are ignored for that reason.
Checks before finishing
npx tsc --noEmit -p tsconfig.app.json # storefront types
npx ng build fusion-angular-tailwind-starter --configuration production
npx ng build admin --configuration production # when the admin changed
The storefront build prints one Beasties warning ("1 rules skipped due to selector errors"); it is a critical-CSS inlining notice, not a build failure.
Git hygiene
This working tree often carries unrelated in-progress changes (backend Gradle files, compose files). Stage files
explicitly by path rather than git add -A.