[{"data":1,"prerenderedAt":3262},["ShallowReactive",2],{"navigation_docs":3,"-docs-studios-sites-theme-design-tokens-":1990},[4,54,132,180,390,1721],{"title":5,"path":6,"stem":7,"children":8},"Getting Started","\u002Fdocs\u002Fgetting-started","docs\u002Fgetting-started\u002Findex",[9,10,17,23,30,36,42,48],{"title":5,"path":6,"stem":7},{"title":11,"path":12,"stem":13,"children":14,"icon":16},"Apps and Sites","\u002Fdocs\u002Fgetting-started\u002Fapps-and-sites","docs\u002Fgetting-started\u002Fapps-and-sites\u002Findex",[15],{"title":11,"path":12,"stem":13,"icon":16},"i-lucide-columns-2",{"title":18,"path":19,"stem":20,"children":21},"Architecture Overview","\u002Fdocs\u002Fgetting-started\u002Farchitecture","docs\u002Fgetting-started\u002Farchitecture\u002Findex",[22],{"title":18,"path":19,"stem":20},{"title":24,"path":25,"stem":26,"children":27,"icon":29},"Get Help","\u002Fdocs\u002Fgetting-started\u002Fget-help","docs\u002Fgetting-started\u002Fget-help\u002Findex",[28],{"title":24,"path":25,"stem":26,"icon":29},"i-lucide-life-buoy",{"title":31,"path":32,"stem":33,"children":34},"Glossary","\u002Fdocs\u002Fgetting-started\u002Fglossary","docs\u002Fgetting-started\u002Fglossary\u002Findex",[35],{"title":31,"path":32,"stem":33},{"title":37,"path":38,"stem":39,"children":40},"Platform Overview","\u002Fdocs\u002Fgetting-started\u002Fplatform-overview","docs\u002Fgetting-started\u002Fplatform-overview\u002Findex",[41],{"title":37,"path":38,"stem":39},{"title":43,"path":44,"stem":45,"children":46},"Prerequisites","\u002Fdocs\u002Fgetting-started\u002Fprerequisites","docs\u002Fgetting-started\u002Fprerequisites\u002Findex",[47],{"title":43,"path":44,"stem":45},{"title":49,"path":50,"stem":51,"children":52},"Your First App in 15 Minutes","\u002Fdocs\u002Fgetting-started\u002Fquick-start","docs\u002Fgetting-started\u002Fquick-start\u002Findex",[53],{"title":49,"path":50,"stem":51},{"title":55,"path":56,"stem":57,"children":58},"Guides","\u002Fdocs\u002Fguides","docs\u002Fguides\u002Findex",[59,60,84,90,96,102],{"title":55,"path":56,"stem":57},{"title":61,"path":62,"stem":63,"children":64},"Build a revenexx App","\u002Fdocs\u002Fguides\u002Fapps","docs\u002Fguides\u002Fapps\u002Findex",[65,66,72,78],{"title":61,"path":62,"stem":63},{"title":67,"path":68,"stem":69,"children":70},"Add a data model","\u002Fdocs\u002Fguides\u002Fapps\u002Fadd-a-data-model","docs\u002Fguides\u002Fapps\u002Fadd-a-data-model\u002Findex",[71],{"title":67,"path":68,"stem":69},{"title":73,"path":74,"stem":75,"children":76},"Build your first app","\u002Fdocs\u002Fguides\u002Fapps\u002Fbuild-your-first-app","docs\u002Fguides\u002Fapps\u002Fbuild-your-first-app\u002Findex",[77],{"title":73,"path":74,"stem":75},{"title":79,"path":80,"stem":81,"children":82},"Deploy with the CLI","\u002Fdocs\u002Fguides\u002Fapps\u002Fdeploy-with-the-cli","docs\u002Fguides\u002Fapps\u002Fdeploy-with-the-cli\u002Findex",[83],{"title":79,"path":80,"stem":81},{"title":85,"path":86,"stem":87,"children":88},"Configure pricing rules","\u002Fdocs\u002Fguides\u002Fconfigure-pricing-rules","docs\u002Fguides\u002Fconfigure-pricing-rules\u002Findex",[89],{"title":85,"path":86,"stem":87},{"title":91,"path":92,"stem":93,"children":94},"Examples","\u002Fdocs\u002Fguides\u002Fexamples","docs\u002Fguides\u002Fexamples\u002Findex",[95],{"title":91,"path":92,"stem":93},{"title":97,"path":98,"stem":99,"children":100},"Import a BMECAT product catalog","\u002Fdocs\u002Fguides\u002Fimport-a-bmecat-catalog","docs\u002Fguides\u002Fimport-a-bmecat-catalog\u002Findex",[101],{"title":97,"path":98,"stem":99},{"title":103,"path":104,"stem":105,"children":106},"Build a storefront Theme","\u002Fdocs\u002Fguides\u002Fthemes","docs\u002Fguides\u002Fthemes\u002Findex",[107,108,114,120,126],{"title":103,"path":104,"stem":105},{"title":109,"path":110,"stem":111,"children":112},"Build your first Theme","\u002Fdocs\u002Fguides\u002Fthemes\u002Fbuild-your-first-theme","docs\u002Fguides\u002Fthemes\u002Fbuild-your-first-theme\u002Findex",[113],{"title":109,"path":110,"stem":111},{"title":115,"path":116,"stem":117,"children":118},"Customize blocks","\u002Fdocs\u002Fguides\u002Fthemes\u002Fcustomize-blocks","docs\u002Fguides\u002Fthemes\u002Fcustomize-blocks\u002Findex",[119],{"title":115,"path":116,"stem":117},{"title":121,"path":122,"stem":123,"children":124},"Deploy your storefront","\u002Fdocs\u002Fguides\u002Fthemes\u002Fdeploy-your-storefront","docs\u002Fguides\u002Fthemes\u002Fdeploy-your-storefront\u002Findex",[125],{"title":121,"path":122,"stem":123},{"title":127,"path":128,"stem":129,"children":130},"Theme tokens and styling","\u002Fdocs\u002Fguides\u002Fthemes\u002Ftheme-tokens-and-styling","docs\u002Fguides\u002Fthemes\u002Ftheme-tokens-and-styling\u002Findex",[131],{"title":127,"path":128,"stem":129},{"title":133,"path":134,"stem":135,"children":136},"SDKs","\u002Fdocs\u002Fsdks","docs\u002Fsdks\u002Findex",[137,138,144,150,156,162,168,174],{"title":133,"path":134,"stem":135},{"title":139,"path":140,"stem":141,"children":142},"App SDK","\u002Fdocs\u002Fsdks\u002Fapp-sdk","docs\u002Fsdks\u002Fapp-sdk\u002Findex",[143],{"title":139,"path":140,"stem":141},{"title":145,"path":146,"stem":147,"children":148},"CLI","\u002Fdocs\u002Fsdks\u002Fcli","docs\u002Fsdks\u002Fcli\u002Findex",[149],{"title":145,"path":146,"stem":147},{"title":151,"path":152,"stem":153,"children":154},"Design systems","\u002Fdocs\u002Fsdks\u002Fdesign-systems","docs\u002Fsdks\u002Fdesign-systems\u002Findex",[155],{"title":151,"path":152,"stem":153},{"title":157,"path":158,"stem":159,"children":160},"Integration Node SDK","\u002Fdocs\u002Fsdks\u002Fintegration-nodes","docs\u002Fsdks\u002Fintegration-nodes\u002Findex",[161],{"title":157,"path":158,"stem":159},{"title":163,"path":164,"stem":165,"children":166},"Node SDK","\u002Fdocs\u002Fsdks\u002Fnode","docs\u002Fsdks\u002Fnode\u002Findex",[167],{"title":163,"path":164,"stem":165},{"title":169,"path":170,"stem":171,"children":172},"PHP SDK","\u002Fdocs\u002Fsdks\u002Fphp","docs\u002Fsdks\u002Fphp\u002Findex",[173],{"title":169,"path":170,"stem":171},{"title":175,"path":176,"stem":177,"children":178},"Web \u002F JavaScript SDK","\u002Fdocs\u002Fsdks\u002Fweb","docs\u002Fsdks\u002Fweb\u002Findex",[179],{"title":175,"path":176,"stem":177},{"title":181,"path":182,"stem":183,"children":184},"Services","\u002Fdocs\u002Fservices","docs\u002Fservices\u002Findex",[185,186,222,252,270,324,372],{"title":181,"path":182,"stem":183},{"title":187,"path":188,"stem":189,"children":190},"API usage","\u002Fdocs\u002Fservices\u002Fapi-usage","docs\u002Fservices\u002Fapi-usage\u002Findex",[191,192,198,204,210,216],{"title":187,"path":188,"stem":189},{"title":193,"path":194,"stem":195,"children":196},"Errors","\u002Fdocs\u002Fservices\u002Fapi-usage\u002Ferrors","docs\u002Fservices\u002Fapi-usage\u002Ferrors\u002Findex",[197],{"title":193,"path":194,"stem":195},{"title":199,"path":200,"stem":201,"children":202},"Retries & idempotency","\u002Fdocs\u002Fservices\u002Fapi-usage\u002Fidempotency","docs\u002Fservices\u002Fapi-usage\u002Fidempotency\u002Findex",[203],{"title":199,"path":200,"stem":201},{"title":205,"path":206,"stem":207,"children":208},"Pagination & filtering","\u002Fdocs\u002Fservices\u002Fapi-usage\u002Fpagination","docs\u002Fservices\u002Fapi-usage\u002Fpagination\u002Findex",[209],{"title":205,"path":206,"stem":207},{"title":211,"path":212,"stem":213,"children":214},"Rate limits","\u002Fdocs\u002Fservices\u002Fapi-usage\u002Frate-limits","docs\u002Fservices\u002Fapi-usage\u002Frate-limits\u002Findex",[215],{"title":211,"path":212,"stem":213},{"title":217,"path":218,"stem":219,"children":220},"Versioning & stability","\u002Fdocs\u002Fservices\u002Fapi-usage\u002Fversioning","docs\u002Fservices\u002Fapi-usage\u002Fversioning\u002Findex",[221],{"title":217,"path":218,"stem":219},{"title":223,"path":224,"stem":225,"children":226},"Authentication","\u002Fdocs\u002Fservices\u002Fauth","docs\u002Fservices\u002Fauth\u002Findex",[227,228,234,240,246],{"title":223,"path":224,"stem":225},{"title":229,"path":230,"stem":231,"children":232},"API keys","\u002Fdocs\u002Fservices\u002Fauth\u002Fapi-keys","docs\u002Fservices\u002Fauth\u002Fapi-keys\u002Findex",[233],{"title":229,"path":230,"stem":231},{"title":235,"path":236,"stem":237,"children":238},"Multi-factor authentication","\u002Fdocs\u002Fservices\u002Fauth\u002Fmfa","docs\u002Fservices\u002Fauth\u002Fmfa\u002Findex",[239],{"title":235,"path":236,"stem":237},{"title":241,"path":242,"stem":243,"children":244},"Social sign-in","\u002Fdocs\u002Fservices\u002Fauth\u002Foauth2","docs\u002Fservices\u002Fauth\u002Foauth2\u002Findex",[245],{"title":241,"path":242,"stem":243},{"title":247,"path":248,"stem":249,"children":250},"Sessions","\u002Fdocs\u002Fservices\u002Fauth\u002Fsessions","docs\u002Fservices\u002Fauth\u002Fsessions\u002Findex",[251],{"title":247,"path":248,"stem":249},{"title":253,"path":254,"stem":255,"children":256},"Events","\u002Fdocs\u002Fservices\u002Fevents","docs\u002Fservices\u002Fevents\u002Findex",[257,258,264],{"title":253,"path":254,"stem":255},{"title":259,"path":260,"stem":261,"children":262},"Consuming events","\u002Fdocs\u002Fservices\u002Fevents\u002Fconsuming-events","docs\u002Fservices\u002Fevents\u002Fconsuming-events\u002Findex",[263],{"title":259,"path":260,"stem":261},{"title":265,"path":266,"stem":267,"children":268},"Event types","\u002Fdocs\u002Fservices\u002Fevents\u002Fevent-types","docs\u002Fservices\u002Fevents\u002Fevent-types\u002Findex",[269],{"title":265,"path":266,"stem":267},{"title":271,"path":272,"stem":273,"children":274},"Network","\u002Fdocs\u002Fservices\u002Fnetwork","docs\u002Fservices\u002Fnetwork\u002Findex",[275,276,282,288,294,300,306,312,318],{"title":271,"path":272,"stem":273},{"title":277,"path":278,"stem":279,"children":280},"Caching","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fcaching","docs\u002Fservices\u002Fnetwork\u002Fcaching\u002Findex",[281],{"title":277,"path":278,"stem":279},{"title":283,"path":284,"stem":285,"children":286},"Content delivery (CDN)","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fcdn","docs\u002Fservices\u002Fnetwork\u002Fcdn\u002Findex",[287],{"title":283,"path":284,"stem":285},{"title":289,"path":290,"stem":291,"children":292},"Compression","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fcompression","docs\u002Fservices\u002Fnetwork\u002Fcompression\u002Findex",[293],{"title":289,"path":290,"stem":291},{"title":295,"path":296,"stem":297,"children":298},"DDoS mitigation","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fddos","docs\u002Fservices\u002Fnetwork\u002Fddos\u002Findex",[299],{"title":295,"path":296,"stem":297},{"title":301,"path":302,"stem":303,"children":304},"Edge network","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fedges","docs\u002Fservices\u002Fnetwork\u002Fedges\u002Findex",[305],{"title":301,"path":302,"stem":303},{"title":307,"path":308,"stem":309,"children":310},"Endpoints","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fendpoints","docs\u002Fservices\u002Fnetwork\u002Fendpoints\u002Findex",[311],{"title":307,"path":308,"stem":309},{"title":313,"path":314,"stem":315,"children":316},"Transport Layer Security (TLS)","\u002Fdocs\u002Fservices\u002Fnetwork\u002Ftls","docs\u002Fservices\u002Fnetwork\u002Ftls\u002Findex",[317],{"title":313,"path":314,"stem":315},{"title":319,"path":320,"stem":321,"children":322},"Web application firewall (WAF)","\u002Fdocs\u002Fservices\u002Fnetwork\u002Fwaf","docs\u002Fservices\u002Fnetwork\u002Fwaf\u002Findex",[323],{"title":319,"path":320,"stem":321},{"title":325,"path":326,"stem":327,"children":328},"Storage","\u002Fdocs\u002Fservices\u002Fstorage","docs\u002Fservices\u002Fstorage\u002Findex",[329,330,336,342,348,354,360,366],{"title":325,"path":326,"stem":327},{"title":331,"path":332,"stem":333,"children":334},"Folders","\u002Fdocs\u002Fservices\u002Fstorage\u002Fbuckets","docs\u002Fservices\u002Fstorage\u002Fbuckets\u002Findex",[335],{"title":331,"path":332,"stem":333},{"title":337,"path":338,"stem":339,"children":340},"Signed URLs and access","\u002Fdocs\u002Fservices\u002Fstorage\u002Ffile-tokens","docs\u002Fservices\u002Fstorage\u002Ffile-tokens\u002Findex",[341],{"title":337,"path":338,"stem":339},{"title":343,"path":344,"stem":345,"children":346},"Serve and transform images","\u002Fdocs\u002Fservices\u002Fstorage\u002Fimages","docs\u002Fservices\u002Fstorage\u002Fimages\u002Findex",[347],{"title":343,"path":344,"stem":345},{"title":349,"path":350,"stem":351,"children":352},"3D assets","\u002Fdocs\u002Fservices\u002Fstorage\u002Fmodel-viewer","docs\u002Fservices\u002Fstorage\u002Fmodel-viewer\u002Findex",[353],{"title":349,"path":350,"stem":351},{"title":355,"path":356,"stem":357,"children":358},"Access control and visibility","\u002Fdocs\u002Fservices\u002Fstorage\u002Fpermissions","docs\u002Fservices\u002Fstorage\u002Fpermissions\u002Findex",[359],{"title":355,"path":356,"stem":357},{"title":361,"path":362,"stem":363,"children":364},"Quick start","\u002Fdocs\u002Fservices\u002Fstorage\u002Fquick-start","docs\u002Fservices\u002Fstorage\u002Fquick-start\u002Findex",[365],{"title":361,"path":362,"stem":363},{"title":367,"path":368,"stem":369,"children":370},"Upload and manage files","\u002Fdocs\u002Fservices\u002Fstorage\u002Fupload-download","docs\u002Fservices\u002Fstorage\u002Fupload-download\u002Findex",[371],{"title":367,"path":368,"stem":369},{"title":373,"path":374,"stem":375,"children":376},"Webhooks","\u002Fdocs\u002Fservices\u002Fwebhooks","docs\u002Fservices\u002Fwebhooks\u002Findex",[377,378,384],{"title":373,"path":374,"stem":375},{"title":379,"path":380,"stem":381,"children":382},"Delivery","\u002Fdocs\u002Fservices\u002Fwebhooks\u002Fdelivery","docs\u002Fservices\u002Fwebhooks\u002Fdelivery\u002Findex",[383],{"title":379,"path":380,"stem":381},{"title":385,"path":386,"stem":387,"children":388},"Security","\u002Fdocs\u002Fservices\u002Fwebhooks\u002Fsecurity","docs\u002Fservices\u002Fwebhooks\u002Fsecurity\u002Findex",[389],{"title":385,"path":386,"stem":387},{"title":391,"path":392,"stem":393,"children":394},"Studios","\u002Fdocs\u002Fstudios","docs\u002Fstudios\u002Findex",[395,396,402,570,913,1195,1378],{"title":391,"path":392,"stem":393},{"title":397,"path":398,"stem":399,"children":400},"AI Studio","\u002Fdocs\u002Fstudios\u002Fai","docs\u002Fstudios\u002Fai\u002Findex",[401],{"title":397,"path":398,"stem":399},{"title":403,"path":404,"stem":405,"children":406},"Analytics Studio","\u002Fdocs\u002Fstudios\u002Fanalytics","docs\u002Fstudios\u002Fanalytics\u002Findex",[407,408,451,488,495,514,545],{"title":403,"path":404,"stem":405},{"title":409,"path":410,"stem":411,"children":412,"icon":414},"Make your app's data analyzable","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Findex",[413,415,421,427,433,439,445],{"title":409,"path":410,"stem":411,"icon":414},"i-lucide-table-2",{"title":416,"path":417,"stem":418,"children":419},"Column locators","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fcolumn-locators","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fcolumn-locators\u002Findex",[420],{"title":416,"path":417,"stem":418},{"title":422,"path":423,"stem":424,"children":425},"Declaring a view","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fdeclaring-a-view","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fdeclaring-a-view\u002Findex",[426],{"title":422,"path":423,"stem":424},{"title":428,"path":429,"stem":430,"children":431},"Example","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fexample","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fexample\u002Findex",[432],{"title":428,"path":429,"stem":430},{"title":434,"path":435,"stem":436,"children":437},"Semantic roles","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fsemantic-roles","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fsemantic-roles\u002Findex",[438],{"title":434,"path":435,"stem":436},{"title":440,"path":441,"stem":442,"children":443},"Tenant isolation","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Ftenant-isolation","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Ftenant-isolation\u002Findex",[444],{"title":440,"path":441,"stem":442},{"title":446,"path":447,"stem":448,"children":449},"The contract","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fthe-contract","docs\u002Fstudios\u002Fanalytics\u002Fanalytics-json\u002Fthe-contract\u002Findex",[450],{"title":446,"path":447,"stem":448},{"title":452,"path":453,"stem":454,"children":455,"icon":457},"Stream commerce activity","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fevents","docs\u002Fstudios\u002Fanalytics\u002Fevents\u002Findex",[456,458,464,470,476,482],{"title":452,"path":453,"stem":454,"icon":457},"i-lucide-radio",{"title":459,"path":460,"stem":461,"children":462},"Delivery guarantees","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fdelivery-guarantees","docs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fdelivery-guarantees\u002Findex",[463],{"title":459,"path":460,"stem":461},{"title":465,"path":466,"stem":467,"children":468},"Event types for reporting","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fevent-types-for-reporting","docs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fevent-types-for-reporting\u002Findex",[469],{"title":465,"path":466,"stem":467},{"title":471,"path":472,"stem":473,"children":474},"Register an endpoint","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fregister-an-endpoint","docs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fregister-an-endpoint\u002Findex",[475],{"title":471,"path":472,"stem":473},{"title":477,"path":478,"stem":479,"children":480},"The event stream","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fthe-event-stream","docs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fthe-event-stream\u002Findex",[481],{"title":477,"path":478,"stem":479},{"title":483,"path":484,"stem":485,"children":486},"Verify a delivery","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fverify-a-delivery","docs\u002Fstudios\u002Fanalytics\u002Fevents\u002Fverify-a-delivery\u002Findex",[487],{"title":483,"path":484,"stem":485},{"title":489,"path":490,"stem":491,"children":492,"icon":494},"Getting data out","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fgetting-data-out","docs\u002Fstudios\u002Fanalytics\u002Fgetting-data-out\u002Findex",[493],{"title":489,"path":490,"stem":491,"icon":494},"i-lucide-arrow-right-left",{"title":496,"path":497,"stem":498,"children":499,"icon":501},"Limits and what's next","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Flimits","docs\u002Fstudios\u002Fanalytics\u002Flimits\u002Findex",[500,502,508],{"title":496,"path":497,"stem":498,"icon":501},"i-lucide-list-checks",{"title":503,"path":504,"stem":505,"children":506},"Designing for what's coming","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Flimits\u002Fdesigning-for-whats-coming","docs\u002Fstudios\u002Fanalytics\u002Flimits\u002Fdesigning-for-whats-coming\u002Findex",[507],{"title":503,"path":504,"stem":505},{"title":509,"path":510,"stem":511,"children":512},"What does not exist yet","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Flimits\u002Fwhat-does-not-exist-yet","docs\u002Fstudios\u002Fanalytics\u002Flimits\u002Fwhat-does-not-exist-yet\u002Findex",[513],{"title":509,"path":510,"stem":511},{"title":515,"path":516,"stem":517,"children":518,"icon":520},"Build your own reporting store","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fown-store","docs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Findex",[519,521,527,533,539],{"title":515,"path":516,"stem":517,"icon":520},"i-lucide-database",{"title":522,"path":523,"stem":524,"children":525},"Backfill","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fbackfill","docs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fbackfill\u002Findex",[526],{"title":522,"path":523,"stem":524},{"title":528,"path":529,"stem":530,"children":531},"Incremental sync","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fincremental-sync","docs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fincremental-sync\u002Findex",[532],{"title":528,"path":529,"stem":530},{"title":534,"path":535,"stem":536,"children":537},"Modelling","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fmodelling","docs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fmodelling\u002Findex",[538],{"title":534,"path":535,"stem":536},{"title":540,"path":541,"stem":542,"children":543},"Pull versus push","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fpull-vs-push","docs\u002Fstudios\u002Fanalytics\u002Fown-store\u002Fpull-vs-push\u002Findex",[544],{"title":540,"path":541,"stem":542},{"title":546,"path":547,"stem":548,"children":549,"icon":551},"What the tenant sees","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees","docs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Findex",[550,552,558,564],{"title":546,"path":547,"stem":548,"icon":551},"i-lucide-chart-column",{"title":553,"path":554,"stem":555,"children":556},"Cohorts","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Fcohorts","docs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Fcohorts\u002Findex",[557],{"title":553,"path":554,"stem":555},{"title":559,"path":560,"stem":561,"children":562},"Datasets and charts","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Fdatasets-and-charts","docs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Fdatasets-and-charts\u002Findex",[563],{"title":559,"path":560,"stem":561},{"title":565,"path":566,"stem":567,"children":568},"Studio overview","\u002Fdocs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Fstudio-overview","docs\u002Fstudios\u002Fanalytics\u002Fwhat-the-tenant-sees\u002Fstudio-overview\u002Findex",[569],{"title":565,"path":566,"stem":567},{"title":571,"path":572,"stem":573,"children":574},"App Studio","\u002Fdocs\u002Fstudios\u002Fapps","docs\u002Fstudios\u002Fapps\u002Findex",[575,576,613,684,749,767,834],{"title":571,"path":572,"stem":573},{"title":577,"path":578,"stem":579,"children":580,"icon":582},"Admin UI","\u002Fdocs\u002Fstudios\u002Fapps\u002Fadmin-ui","docs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Findex",[581,583,589,595,601,607],{"title":577,"path":578,"stem":579,"icon":582},"i-lucide-layout-dashboard",{"title":584,"path":585,"stem":586,"children":587},"How the Cockpit renders","\u002Fdocs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fhow-cockpit-renders","docs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fhow-cockpit-renders\u002Findex",[588],{"title":584,"path":585,"stem":586},{"title":590,"path":591,"stem":592,"children":593},"Preview locally","\u002Fdocs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fpreview-locally","docs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fpreview-locally\u002Findex",[594],{"title":590,"path":591,"stem":592},{"title":596,"path":597,"stem":598,"children":599},"Reading settings","\u002Fdocs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Freading-settings","docs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Freading-settings\u002Findex",[600],{"title":596,"path":597,"stem":598},{"title":602,"path":603,"stem":604,"children":605},"Settings","\u002Fdocs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fsettings","docs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fsettings\u002Findex",[606],{"title":602,"path":603,"stem":604},{"title":608,"path":609,"stem":610,"children":611},"Vocabularies","\u002Fdocs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fvocabularies","docs\u002Fstudios\u002Fapps\u002Fadmin-ui\u002Fvocabularies\u002Findex",[612],{"title":608,"path":609,"stem":610},{"title":614,"path":615,"stem":616,"children":617,"icon":619},"Your app's API","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi","docs\u002Fstudios\u002Fapps\u002Fapi\u002Findex",[618,620,625,631,637,643,649,654,660,666,672,678],{"title":614,"path":615,"stem":616,"icon":619},"i-lucide-route",{"title":277,"path":621,"stem":622,"children":623},"\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fcaching","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fcaching\u002Findex",[624],{"title":277,"path":621,"stem":622},{"title":626,"path":627,"stem":628,"children":629},"Calling another app","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fcalling-another-app","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fcalling-another-app\u002Findex",[630],{"title":626,"path":627,"stem":628},{"title":632,"path":633,"stem":634,"children":635},"Capabilities","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fcapabilities","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fcapabilities\u002Findex",[636],{"title":632,"path":633,"stem":634},{"title":638,"path":639,"stem":640,"children":641},"Capability reference","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fcapability-reference","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fcapability-reference\u002Findex",[642],{"title":638,"path":639,"stem":640},{"title":644,"path":645,"stem":646,"children":647},"CRUD","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fcrud","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fcrud\u002Findex",[648],{"title":644,"path":645,"stem":646},{"title":193,"path":650,"stem":651,"children":652},"\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Ferrors","docs\u002Fstudios\u002Fapps\u002Fapi\u002Ferrors\u002Findex",[653],{"title":193,"path":650,"stem":651},{"title":655,"path":656,"stem":657,"children":658},"Overriding a capability","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Foverriding-a-capability","docs\u002Fstudios\u002Fapps\u002Fapi\u002Foverriding-a-capability\u002Findex",[659],{"title":655,"path":656,"stem":657},{"title":661,"path":662,"stem":663,"children":664},"Pagination and filtering","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fpagination-and-filtering","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fpagination-and-filtering\u002Findex",[665],{"title":661,"path":662,"stem":663},{"title":667,"path":668,"stem":669,"children":670},"Published OpenAPI","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Fpublished-openapi","docs\u002Fstudios\u002Fapps\u002Fapi\u002Fpublished-openapi\u002Findex",[671],{"title":667,"path":668,"stem":669},{"title":673,"path":674,"stem":675,"children":676},"The router","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Frouter","docs\u002Fstudios\u002Fapps\u002Fapi\u002Frouter\u002Findex",[677],{"title":673,"path":674,"stem":675},{"title":679,"path":680,"stem":681,"children":682},"Tags","\u002Fdocs\u002Fstudios\u002Fapps\u002Fapi\u002Ftags","docs\u002Fstudios\u002Fapps\u002Fapi\u002Ftags\u002Findex",[683],{"title":679,"path":680,"stem":681},{"title":685,"path":686,"stem":687,"children":688,"icon":520},"Data model","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Findex",[689,690,696,702,708,714,720,726,732,738,743],{"title":685,"path":686,"stem":687,"icon":520},{"title":691,"path":692,"stem":693,"children":694},"Adapters","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fadapters","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fadapters\u002Findex",[695],{"title":691,"path":692,"stem":693},{"title":697,"path":698,"stem":699,"children":700},"Column types","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fcolumn-types","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fcolumn-types\u002Findex",[701],{"title":697,"path":698,"stem":699},{"title":703,"path":704,"stem":705,"children":706},"Cross-app lookups","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fcross-app-lookups","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fcross-app-lookups\u002Findex",[707],{"title":703,"path":704,"stem":705},{"title":709,"path":710,"stem":711,"children":712},"Migrations","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fmigrations","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fmigrations\u002Findex",[713],{"title":709,"path":710,"stem":711},{"title":715,"path":716,"stem":717,"children":718},"Projections","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fprojections","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fprojections\u002Findex",[719],{"title":715,"path":716,"stem":717},{"title":721,"path":722,"stem":723,"children":724},"Relationships","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Frelationships","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Frelationships\u002Findex",[725],{"title":721,"path":722,"stem":723},{"title":727,"path":728,"stem":729,"children":730},"Schema reference","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fschema-reference","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fschema-reference\u002Findex",[731],{"title":727,"path":728,"stem":729},{"title":733,"path":734,"stem":735,"children":736},"Scoping","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fscoping","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Fscoping\u002Findex",[737],{"title":733,"path":734,"stem":735},{"title":440,"path":739,"stem":740,"children":741},"\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Ftenant-isolation","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Ftenant-isolation\u002Findex",[742],{"title":440,"path":739,"stem":740},{"title":744,"path":745,"stem":746,"children":747},"The typed client","\u002Fdocs\u002Fstudios\u002Fapps\u002Fdata-model\u002Ftyped-client","docs\u002Fstudios\u002Fapps\u002Fdata-model\u002Ftyped-client\u002Findex",[748],{"title":744,"path":745,"stem":746},{"title":750,"path":751,"stem":752,"children":753},"Getting started","\u002Fdocs\u002Fstudios\u002Fapps\u002Fgetting-started","docs\u002Fstudios\u002Fapps\u002Fgetting-started\u002Findex",[754,755,761],{"title":750,"path":751,"stem":752},{"title":756,"path":757,"stem":758,"children":759},"App model","\u002Fdocs\u002Fstudios\u002Fapps\u002Fgetting-started\u002Fapp-model","docs\u002Fstudios\u002Fapps\u002Fgetting-started\u002Fapp-model\u002Findex",[760],{"title":756,"path":757,"stem":758},{"title":762,"path":763,"stem":764,"children":765},"App isolation","\u002Fdocs\u002Fstudios\u002Fapps\u002Fgetting-started\u002Fisolation","docs\u002Fstudios\u002Fapps\u002Fgetting-started\u002Fisolation\u002Findex",[766],{"title":762,"path":763,"stem":764},{"title":768,"path":769,"stem":770,"children":771,"icon":773},"Platform services","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Findex",[772,774,780,786,792,798,804,810,816,822,828],{"title":768,"path":769,"stem":770,"icon":773},"i-lucide-boxes",{"title":775,"path":776,"stem":777,"children":778},"Entity access","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fentity-access","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fentity-access\u002Findex",[779],{"title":775,"path":776,"stem":777},{"title":781,"path":782,"stem":783,"children":784},"Events you emit","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fevents-you-emit","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fevents-you-emit\u002Findex",[785],{"title":781,"path":782,"stem":783},{"title":787,"path":788,"stem":789,"children":790},"Events you receive","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fevents-you-receive","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fevents-you-receive\u002Findex",[791],{"title":787,"path":788,"stem":789},{"title":793,"path":794,"stem":795,"children":796},"Not yet proven","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fnot-yet-proven","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fnot-yet-proven\u002Findex",[797],{"title":793,"path":794,"stem":795},{"title":799,"path":800,"stem":801,"children":802},"Outbound HTTP","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Foutbound-http","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Foutbound-http\u002Findex",[803],{"title":799,"path":800,"stem":801},{"title":805,"path":806,"stem":807,"children":808},"Permissions","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fpermissions","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fpermissions\u002Findex",[809],{"title":805,"path":806,"stem":807},{"title":811,"path":812,"stem":813,"children":814},"Person permissions","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fperson-permissions","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fperson-permissions\u002Findex",[815],{"title":811,"path":812,"stem":813},{"title":817,"path":818,"stem":819,"children":820},"Scheduled work","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fscheduled-work","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Fscheduled-work\u002Findex",[821],{"title":817,"path":818,"stem":819},{"title":823,"path":824,"stem":825,"children":826},"Tenant identity","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Ftenant-identity","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Ftenant-identity\u002Findex",[827],{"title":823,"path":824,"stem":825},{"title":829,"path":830,"stem":831,"children":832},"Tracing","\u002Fdocs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Ftracing","docs\u002Fstudios\u002Fapps\u002Fplatform-services\u002Ftracing\u002Findex",[833],{"title":829,"path":830,"stem":831},{"title":835,"path":836,"stem":837,"children":838,"icon":840},"Ship and operate","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Findex",[839,841,847,853,859,865,871,877,883,889,895,901,907],{"title":835,"path":836,"stem":837,"icon":840},"i-lucide-rocket",{"title":842,"path":843,"stem":844,"children":845},"Billing","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fbilling","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fbilling\u002Findex",[846],{"title":842,"path":843,"stem":844},{"title":848,"path":849,"stem":850,"children":851},"Consent","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fconsent","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fconsent\u002Findex",[852],{"title":848,"path":849,"stem":850},{"title":854,"path":855,"stem":856,"children":857},"Dependencies","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fdependencies","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fdependencies\u002Findex",[858],{"title":854,"path":855,"stem":856},{"title":860,"path":861,"stem":862,"children":863},"Deploying","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fdeploying","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fdeploying\u002Findex",[864],{"title":860,"path":861,"stem":862},{"title":866,"path":867,"stem":868,"children":869},"Manifest reference","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fmanifest-reference","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fmanifest-reference\u002Findex",[870],{"title":866,"path":867,"stem":868},{"title":872,"path":873,"stem":874,"children":875},"Operating","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Foperating","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Foperating\u002Findex",[876],{"title":872,"path":873,"stem":874},{"title":878,"path":879,"stem":880,"children":881},"Private or Marketplace","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fprivate-vs-marketplace","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fprivate-vs-marketplace\u002Findex",[882],{"title":878,"path":879,"stem":880},{"title":884,"path":885,"stem":886,"children":887},"Publish and install","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fpublish-and-install","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fpublish-and-install\u002Findex",[888],{"title":884,"path":885,"stem":886},{"title":890,"path":891,"stem":892,"children":893},"Testing","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Ftesting","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Ftesting\u002Findex",[894],{"title":890,"path":891,"stem":892},{"title":896,"path":897,"stem":898,"children":899},"Validate","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fvalidate","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fvalidate\u002Findex",[900],{"title":896,"path":897,"stem":898},{"title":902,"path":903,"stem":904,"children":905},"Verifying live","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fverifying-live","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fverifying-live\u002Findex",[906],{"title":902,"path":903,"stem":904},{"title":908,"path":909,"stem":910,"children":911},"Versioning","\u002Fdocs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fversioning","docs\u002Fstudios\u002Fapps\u002Fship-and-operate\u002Fversioning\u002Findex",[912],{"title":908,"path":909,"stem":910},{"title":914,"path":915,"stem":916,"children":917},"Commerce Studio","\u002Fdocs\u002Fstudios\u002Fcommerce","docs\u002Fstudios\u002Fcommerce\u002Findex",[918,919,991,1045,1088,1093,1147],{"title":914,"path":915,"stem":916},{"title":920,"path":921,"stem":922,"children":923,"icon":925},"Build an app","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Findex",[924,926,932,938,944,950,956,962,968,974,980,985],{"title":920,"path":921,"stem":922,"icon":925},"i-lucide-puzzle",{"title":927,"path":928,"stem":929,"children":930},"Actions and writes","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Factions-and-writes","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Factions-and-writes\u002Findex",[931],{"title":927,"path":928,"stem":929},{"title":933,"path":934,"stem":935,"children":936},"cockpit.json reference","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fcockpit-json-reference","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fcockpit-json-reference\u002Findex",[937],{"title":933,"path":934,"stem":935},{"title":939,"path":940,"stem":941,"children":942},"Detail views","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fdetail-views","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fdetail-views\u002Findex",[943],{"title":939,"path":940,"stem":941},{"title":945,"path":946,"stem":947,"children":948},"Forms","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fforms","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fforms\u002Findex",[949],{"title":945,"path":946,"stem":947},{"title":951,"path":952,"stem":953,"children":954},"From manifest to installed","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Ffrom-manifest-to-installed","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Ffrom-manifest-to-installed\u002Findex",[955],{"title":951,"path":952,"stem":953},{"title":957,"path":958,"stem":959,"children":960},"How it renders","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fhow-it-renders","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fhow-it-renders\u002Findex",[961],{"title":957,"path":958,"stem":959},{"title":963,"path":964,"stem":965,"children":966},"List views","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Flist-views","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Flist-views\u002Findex",[967],{"title":963,"path":964,"stem":965},{"title":969,"path":970,"stem":971,"children":972},"Navigation","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fnavigation","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fnavigation\u002Findex",[973],{"title":969,"path":970,"stem":971},{"title":975,"path":976,"stem":977,"children":978},"Permissions and scope","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fpermissions-and-scope","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fpermissions-and-scope\u002Findex",[979],{"title":975,"path":976,"stem":977},{"title":590,"path":981,"stem":982,"children":983},"\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fpreview-locally","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fpreview-locally\u002Findex",[984],{"title":590,"path":981,"stem":982},{"title":986,"path":987,"stem":988,"children":989},"Widgets","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fwidgets","docs\u002Fstudios\u002Fcommerce\u002Fbuild-an-app\u002Fwidgets\u002Findex",[990],{"title":986,"path":987,"stem":988},{"title":992,"path":993,"stem":994,"children":995,"icon":997},"Catalog","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Findex",[996,998,1004,1010,1016,1022,1027,1033,1039],{"title":992,"path":993,"stem":994,"icon":997},"i-lucide-package",{"title":999,"path":1000,"stem":1001,"children":1002},"Assets","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fassets","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fassets\u002Findex",[1003],{"title":999,"path":1000,"stem":1001},{"title":1005,"path":1006,"stem":1007,"children":1008},"Associations","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fassociations","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fassociations\u002Findex",[1009],{"title":1005,"path":1006,"stem":1007},{"title":1011,"path":1012,"stem":1013,"children":1014},"Categories","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fcategories","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fcategories\u002Findex",[1015],{"title":1011,"path":1012,"stem":1013},{"title":1017,"path":1018,"stem":1019,"children":1020},"Completeness","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fcompleteness","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fcompleteness\u002Findex",[1021],{"title":1017,"path":1018,"stem":1019},{"title":685,"path":1023,"stem":1024,"children":1025},"\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fdata-model","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fdata-model\u002Findex",[1026],{"title":685,"path":1023,"stem":1024},{"title":1028,"path":1029,"stem":1030,"children":1031},"Import and export","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fimport-and-export","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fimport-and-export\u002Findex",[1032],{"title":1028,"path":1029,"stem":1030},{"title":1034,"path":1035,"stem":1036,"children":1037},"Products","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fproducts","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Fproducts\u002Findex",[1038],{"title":1034,"path":1035,"stem":1036},{"title":1040,"path":1041,"stem":1042,"children":1043},"References","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Freferences","docs\u002Fstudios\u002Fcommerce\u002Fcatalog\u002Freferences\u002Findex",[1044],{"title":1040,"path":1041,"stem":1042},{"title":1046,"path":1047,"stem":1048,"children":1049,"icon":1051},"Customers","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Findex",[1050,1052,1058,1064,1070,1076,1082],{"title":1046,"path":1047,"stem":1048,"icon":1051},"i-lucide-building-2",{"title":1053,"path":1054,"stem":1055,"children":1056},"Contacts","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fcontacts","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fcontacts\u002Findex",[1057],{"title":1053,"path":1054,"stem":1055},{"title":1059,"path":1060,"stem":1061,"children":1062},"Organizations","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Forganizations","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Forganizations\u002Findex",[1063],{"title":1059,"path":1060,"stem":1061},{"title":1065,"path":1066,"stem":1067,"children":1068},"Roles and permissions","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Froles-and-permissions","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Froles-and-permissions\u002Findex",[1069],{"title":1065,"path":1066,"stem":1067},{"title":1071,"path":1072,"stem":1073,"children":1074},"Segments","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fsegments","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fsegments\u002Findex",[1075],{"title":1071,"path":1072,"stem":1073},{"title":1077,"path":1078,"stem":1079,"children":1080},"Storefront accounts","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fstorefront-accounts","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fstorefront-accounts\u002Findex",[1081],{"title":1077,"path":1078,"stem":1079},{"title":1083,"path":1084,"stem":1085,"children":1086},"Value lists","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fvalue-lists","docs\u002Fstudios\u002Fcommerce\u002Fcustomers\u002Fvalue-lists\u002Findex",[1087],{"title":1083,"path":1084,"stem":1085},{"title":750,"path":1089,"stem":1090,"children":1091,"icon":840},"\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fgetting-started","docs\u002Fstudios\u002Fcommerce\u002Fgetting-started\u002Findex",[1092],{"title":750,"path":1089,"stem":1090,"icon":840},{"title":1094,"path":1095,"stem":1096,"children":1097,"icon":1099},"Markets and pricing","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Findex",[1098,1100,1106,1112,1118,1124,1130,1136,1141],{"title":1094,"path":1095,"stem":1096,"icon":1099},"i-lucide-globe",{"title":1101,"path":1102,"stem":1103,"children":1104},"Carriers and tracking","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fcarriers-and-tracking","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fcarriers-and-tracking\u002Findex",[1105],{"title":1101,"path":1102,"stem":1103},{"title":1107,"path":1108,"stem":1109,"children":1110},"Channels","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fchannels","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fchannels\u002Findex",[1111],{"title":1107,"path":1108,"stem":1109},{"title":1113,"path":1114,"stem":1115,"children":1116},"Markets","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fmarkets","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fmarkets\u002Findex",[1117],{"title":1113,"path":1114,"stem":1115},{"title":1119,"path":1120,"stem":1121,"children":1122},"Payment lifecycle","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fpayment-lifecycle","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fpayment-lifecycle\u002Findex",[1123],{"title":1119,"path":1120,"stem":1121},{"title":1125,"path":1126,"stem":1127,"children":1128},"Payment methods","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fpayment-methods","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fpayment-methods\u002Findex",[1129],{"title":1125,"path":1126,"stem":1127},{"title":1131,"path":1132,"stem":1133,"children":1134},"Price lists","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fprice-lists","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fprice-lists\u002Findex",[1135],{"title":1131,"path":1132,"stem":1133},{"title":602,"path":1137,"stem":1138,"children":1139},"\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fsettings","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fsettings\u002Findex",[1140],{"title":602,"path":1137,"stem":1138},{"title":1142,"path":1143,"stem":1144,"children":1145},"Shipping rates","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fshipping-rates","docs\u002Fstudios\u002Fcommerce\u002Fmarkets-and-pricing\u002Fshipping-rates\u002Findex",[1146],{"title":1142,"path":1143,"stem":1144},{"title":1148,"path":1149,"stem":1150,"children":1151,"icon":1153},"Orders","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Findex",[1152,1154,1160,1166,1172,1178,1183,1189],{"title":1148,"path":1149,"stem":1150,"icon":1153},"i-lucide-receipt-text",{"title":1155,"path":1156,"stem":1157,"children":1158},"Carts","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Fcarts","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Fcarts\u002Findex",[1159],{"title":1155,"path":1156,"stem":1157},{"title":1161,"path":1162,"stem":1163,"children":1164},"Events and comments","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Fevents-and-comments","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Fevents-and-comments\u002Findex",[1165],{"title":1161,"path":1162,"stem":1163},{"title":1167,"path":1168,"stem":1169,"children":1170},"Number ranges","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Fnumber-ranges","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Fnumber-ranges\u002Findex",[1171],{"title":1167,"path":1168,"stem":1169},{"title":1173,"path":1174,"stem":1175,"children":1176},"Order lists","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Forder-lists","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Forder-lists\u002Findex",[1177],{"title":1173,"path":1174,"stem":1175},{"title":1148,"path":1179,"stem":1180,"children":1181},"\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Forders","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Forders\u002Findex",[1182],{"title":1148,"path":1179,"stem":1180},{"title":1184,"path":1185,"stem":1186,"children":1187},"Returns","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Freturns","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Freturns\u002Findex",[1188],{"title":1184,"path":1185,"stem":1186},{"title":1190,"path":1191,"stem":1192,"children":1193},"Stock","\u002Fdocs\u002Fstudios\u002Fcommerce\u002Forders\u002Fstock","docs\u002Fstudios\u002Fcommerce\u002Forders\u002Fstock\u002Findex",[1194],{"title":1190,"path":1191,"stem":1192},{"title":1196,"path":1197,"stem":1198,"children":1199},"Integration Studio","\u002Fdocs\u002Fstudios\u002Fintegration-studio","docs\u002Fstudios\u002Fintegration-studio\u002Findex",[1200,1201,1238,1275,1305,1310,1341],{"title":1196,"path":1197,"stem":1198},{"title":1202,"path":1203,"stem":1204,"children":1205,"icon":1207},"Build the workflow","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fbuild","docs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Findex",[1206,1208,1214,1220,1226,1232],{"title":1202,"path":1203,"stem":1204,"icon":1207},"i-lucide-workflow",{"title":1209,"path":1210,"stem":1211,"children":1212},"Expressions","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fexpressions","docs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fexpressions\u002Findex",[1213],{"title":1209,"path":1210,"stem":1211},{"title":1215,"path":1216,"stem":1217,"children":1218},"Node catalog","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fnode-catalog","docs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fnode-catalog\u002Findex",[1219],{"title":1215,"path":1216,"stem":1217},{"title":1221,"path":1222,"stem":1223,"children":1224},"Node configuration","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fnode-configuration","docs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fnode-configuration\u002Findex",[1225],{"title":1221,"path":1222,"stem":1223},{"title":1227,"path":1228,"stem":1229,"children":1230},"Templates","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Ftemplates","docs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Ftemplates\u002Findex",[1231],{"title":1227,"path":1228,"stem":1229},{"title":1233,"path":1234,"stem":1235,"children":1236},"The workflow document","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fworkflow-model","docs\u002Fstudios\u002Fintegration-studio\u002Fbuild\u002Fworkflow-model\u002Findex",[1237],{"title":1233,"path":1234,"stem":1235},{"title":1239,"path":1240,"stem":1241,"children":1242,"icon":1244},"Connect the systems","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fconnect","docs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Findex",[1243,1245,1251,1257,1263,1269],{"title":1239,"path":1240,"stem":1241,"icon":1244},"i-lucide-key-round",{"title":1246,"path":1247,"stem":1248,"children":1249},"Credentials","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Fcredentials","docs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Fcredentials\u002Findex",[1250],{"title":1246,"path":1247,"stem":1248},{"title":1252,"path":1253,"stem":1254,"children":1255},"File transfer","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Ffiles","docs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Ffiles\u002Findex",[1256],{"title":1252,"path":1253,"stem":1254},{"title":1258,"path":1259,"stem":1260,"children":1261},"OAuth","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Foauth","docs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Foauth\u002Findex",[1262],{"title":1258,"path":1259,"stem":1260},{"title":1264,"path":1265,"stem":1266,"children":1267},"Reaching Revenue Cloud","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Freaching-revenue-cloud","docs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Freaching-revenue-cloud\u002Findex",[1268],{"title":1264,"path":1265,"stem":1266},{"title":1270,"path":1271,"stem":1272,"children":1273},"Secrets","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Fsecrets","docs\u002Fstudios\u002Fintegration-studio\u002Fconnect\u002Fsecrets\u002Findex",[1274],{"title":1270,"path":1271,"stem":1272},{"title":1276,"path":1277,"stem":1278,"children":1279,"icon":997},"Extend the Studio","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fextend","docs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Findex",[1280,1281,1287,1293,1299],{"title":1276,"path":1277,"stem":1278,"icon":997},{"title":1282,"path":1283,"stem":1284,"children":1285},"Custom nodes","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fcustom-nodes","docs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fcustom-nodes\u002Findex",[1286],{"title":1282,"path":1283,"stem":1284},{"title":1288,"path":1289,"stem":1290,"children":1291},"Dynamic behaviour","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fdynamic-behaviour","docs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fdynamic-behaviour\u002Findex",[1292],{"title":1288,"path":1289,"stem":1290},{"title":1294,"path":1295,"stem":1296,"children":1297},"Package manifest","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fpackage-manifest","docs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fpackage-manifest\u002Findex",[1298],{"title":1294,"path":1295,"stem":1296},{"title":1300,"path":1301,"stem":1302,"children":1303},"Registration","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fregistration","docs\u002Fstudios\u002Fintegration-studio\u002Fextend\u002Fregistration\u002Findex",[1304],{"title":1300,"path":1301,"stem":1302},{"title":750,"path":1306,"stem":1307,"children":1308,"icon":840},"\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fgetting-started","docs\u002Fstudios\u002Fintegration-studio\u002Fgetting-started\u002Findex",[1309],{"title":750,"path":1306,"stem":1307,"icon":840},{"title":1311,"path":1312,"stem":1313,"children":1314,"icon":1316},"Run, watch, recover","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Foperate","docs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Findex",[1315,1317,1323,1329,1335],{"title":1311,"path":1312,"stem":1313,"icon":1316},"i-lucide-activity",{"title":1318,"path":1319,"stem":1320,"children":1321},"Missed runs","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Fdead-letters","docs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Fdead-letters\u002Findex",[1322],{"title":1318,"path":1319,"stem":1320},{"title":1324,"path":1325,"stem":1326,"children":1327},"Failure handling","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Ffailure-handling","docs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Ffailure-handling\u002Findex",[1328],{"title":1324,"path":1325,"stem":1326},{"title":1330,"path":1331,"stem":1332,"children":1333},"Revisions and audit","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Frevisions-and-audit","docs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Frevisions-and-audit\u002Findex",[1334],{"title":1330,"path":1331,"stem":1332},{"title":1336,"path":1337,"stem":1338,"children":1339},"Runs","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Fruns","docs\u002Fstudios\u002Fintegration-studio\u002Foperate\u002Fruns\u002Findex",[1340],{"title":1336,"path":1337,"stem":1338},{"title":1342,"path":1343,"stem":1344,"children":1345,"icon":1347},"Start the workflow","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fstart","docs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Findex",[1346,1348,1354,1360,1366,1372],{"title":1342,"path":1343,"stem":1344,"icon":1347},"i-lucide-zap",{"title":1349,"path":1350,"stem":1351,"children":1352},"Event triggers","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fevent-triggers","docs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fevent-triggers\u002Findex",[1353],{"title":1349,"path":1350,"stem":1351},{"title":1355,"path":1356,"stem":1357,"children":1358},"Execution modes","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fexecution-modes","docs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fexecution-modes\u002Findex",[1359],{"title":1355,"path":1356,"stem":1357},{"title":1361,"path":1362,"stem":1363,"children":1364},"Schedule triggers","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fschedule-triggers","docs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fschedule-triggers\u002Findex",[1365],{"title":1361,"path":1362,"stem":1363},{"title":1367,"path":1368,"stem":1369,"children":1370},"Triggers","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Ftriggers","docs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Ftriggers\u002Findex",[1371],{"title":1367,"path":1368,"stem":1369},{"title":1373,"path":1374,"stem":1375,"children":1376},"Webhook triggers","\u002Fdocs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fwebhook-triggers","docs\u002Fstudios\u002Fintegration-studio\u002Fstart\u002Fwebhook-triggers\u002Findex",[1377],{"title":1373,"path":1374,"stem":1375},{"title":1379,"path":1380,"stem":1381,"children":1382},"Experience Studio","\u002Fdocs\u002Fstudios\u002Fsites","docs\u002Fstudios\u002Fsites\u002Findex",[1383,1384,1433,1480,1606,1612,1654],{"title":1379,"path":1380,"stem":1381},{"title":1385,"path":1386,"stem":1387,"children":1388,"icon":1390},"Compose pages","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Findex",[1389,1391,1397,1403,1409,1415,1421,1427],{"title":1385,"path":1386,"stem":1387,"icon":1390},"i-lucide-layout-template",{"title":1392,"path":1393,"stem":1394,"children":1395},"Block catalog","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Fblock-catalog","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Fblock-catalog\u002Findex",[1396],{"title":1392,"path":1393,"stem":1394},{"title":1398,"path":1399,"stem":1400,"children":1401},"Block options","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Fblock-options","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Fblock-options\u002Findex",[1402],{"title":1398,"path":1399,"stem":1400},{"title":1404,"path":1405,"stem":1406,"children":1407},"How a block works","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Fhow-a-block-works","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Fhow-a-block-works\u002Findex",[1408],{"title":1404,"path":1405,"stem":1406},{"title":1410,"path":1411,"stem":1412,"children":1413},"Inline editing","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Finline-editing","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Finline-editing\u002Findex",[1414],{"title":1410,"path":1411,"stem":1412},{"title":1416,"path":1417,"stem":1418,"children":1419},"Reading published pages","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Freading-pages","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Freading-pages\u002Findex",[1420],{"title":1416,"path":1417,"stem":1418},{"title":1422,"path":1423,"stem":1424,"children":1425},"Registering blocks","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Fregistering","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Fregistering\u002Findex",[1426],{"title":1422,"path":1423,"stem":1424},{"title":1428,"path":1429,"stem":1430,"children":1431},"Shells and fields","\u002Fdocs\u002Fstudios\u002Fsites\u002Fblocks\u002Fshells-and-fields","docs\u002Fstudios\u002Fsites\u002Fblocks\u002Fshells-and-fields\u002Findex",[1432],{"title":1428,"path":1429,"stem":1430},{"title":1434,"path":1435,"stem":1436,"children":1437,"icon":1439},"Connect data","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata","docs\u002Fstudios\u002Fsites\u002Fdata\u002Findex",[1438,1440,1445,1451,1457,1462,1468,1474],{"title":1434,"path":1435,"stem":1436,"icon":1439},"i-lucide-plug",{"title":223,"path":1441,"stem":1442,"children":1443},"\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fauthentication","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fauthentication\u002Findex",[1444],{"title":223,"path":1441,"stem":1442},{"title":1446,"path":1447,"stem":1448,"children":1449},"The BFF pattern","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fbff-pattern","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fbff-pattern\u002Findex",[1450],{"title":1446,"path":1447,"stem":1448},{"title":1452,"path":1453,"stem":1454,"children":1455},"Catalog, cart, checkout","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fcatalog-cart-checkout","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fcatalog-cart-checkout\u002Findex",[1456],{"title":1452,"path":1453,"stem":1454},{"title":945,"path":1458,"stem":1459,"children":1460},"\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fforms","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fforms\u002Findex",[1461],{"title":945,"path":1458,"stem":1459},{"title":1463,"path":1464,"stem":1465,"children":1466},"Media and assets","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fmedia","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fmedia\u002Findex",[1467],{"title":1463,"path":1464,"stem":1465},{"title":1469,"path":1470,"stem":1471,"children":1472},"Multi-tenant themes","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fmulti-tenant-themes","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fmulti-tenant-themes\u002Findex",[1473],{"title":1469,"path":1470,"stem":1471},{"title":1475,"path":1476,"stem":1477,"children":1478},"Search","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdata\u002Fsearch","docs\u002Fstudios\u002Fsites\u002Fdata\u002Fsearch\u002Findex",[1479],{"title":1475,"path":1476,"stem":1477},{"title":1481,"path":1482,"stem":1483,"children":1484,"icon":840},"Build and deploy","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Findex",[1485,1486,1492,1498,1504,1510,1516,1522,1600],{"title":1481,"path":1482,"stem":1483,"icon":840},{"title":1487,"path":1488,"stem":1489,"children":1490},"Build configuration","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fbuild-configuration","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fbuild-configuration\u002Findex",[1491],{"title":1487,"path":1488,"stem":1489},{"title":1493,"path":1494,"stem":1495,"children":1496},"Compute specifications","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fcompute-specifications","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fcompute-specifications\u002Findex",[1497],{"title":1493,"path":1494,"stem":1495},{"title":1499,"path":1500,"stem":1501,"children":1502},"Environment variables","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fenvironment-variables","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fenvironment-variables\u002Findex",[1503],{"title":1499,"path":1500,"stem":1501},{"title":1505,"path":1506,"stem":1507,"children":1508},"From Git","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Ffrom-git","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Ffrom-git\u002Findex",[1509],{"title":1505,"path":1506,"stem":1507},{"title":1511,"path":1512,"stem":1513,"children":1514},"From the CLI","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Ffrom-the-cli","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Ffrom-the-cli\u002Findex",[1515],{"title":1511,"path":1512,"stem":1513},{"title":1517,"path":1518,"stem":1519,"children":1520},"Manually","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fmanually","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fmanually\u002Findex",[1521],{"title":1517,"path":1518,"stem":1519},{"title":1523,"path":1524,"stem":1525,"children":1526},"Quick-starts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Findex",[1527,1528,1534,1540,1546,1552,1558,1564,1570,1576,1582,1588,1594],{"title":1523,"path":1524,"stem":1525},{"title":1529,"path":1530,"stem":1531,"children":1532},"Deploy an Angular app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fangular","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fangular\u002Findex",[1533],{"title":1529,"path":1530,"stem":1531},{"title":1535,"path":1536,"stem":1537,"children":1538},"Deploy a Astro app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fastro","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fastro\u002Findex",[1539],{"title":1535,"path":1536,"stem":1537},{"title":1541,"path":1542,"stem":1543,"children":1544},"Deploy a Flutter Web app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fflutter","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fflutter\u002Findex",[1545],{"title":1541,"path":1542,"stem":1543},{"title":1547,"path":1548,"stem":1549,"children":1550},"Deploy a Next.js app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fnextjs","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fnextjs\u002Findex",[1551],{"title":1547,"path":1548,"stem":1549},{"title":1553,"path":1554,"stem":1555,"children":1556},"Deploy a Nuxt app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fnuxt","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fnuxt\u002Findex",[1557],{"title":1553,"path":1554,"stem":1555},{"title":1559,"path":1560,"stem":1561,"children":1562},"Deploy a React Native app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Freact-native","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Freact-native\u002Findex",[1563],{"title":1559,"path":1560,"stem":1561},{"title":1565,"path":1566,"stem":1567,"children":1568},"Deploy a React app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Freact","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Freact\u002Findex",[1569],{"title":1565,"path":1566,"stem":1567},{"title":1571,"path":1572,"stem":1573,"children":1574},"Deploy a Remix app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fremix","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fremix\u002Findex",[1575],{"title":1571,"path":1572,"stem":1573},{"title":1577,"path":1578,"stem":1579,"children":1580},"Deploy a SvelteKit app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fsveltekit","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fsveltekit\u002Findex",[1581],{"title":1577,"path":1578,"stem":1579},{"title":1583,"path":1584,"stem":1585,"children":1586},"Deploy a TanStack Start app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Ftanstack-start","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Ftanstack-start\u002Findex",[1587],{"title":1583,"path":1584,"stem":1585},{"title":1589,"path":1590,"stem":1591,"children":1592},"Deploy a Vanilla JS app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fvanilla","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fvanilla\u002Findex",[1593],{"title":1589,"path":1590,"stem":1591},{"title":1595,"path":1596,"stem":1597,"children":1598},"Deploy a Vue.js app to revenexx Storefronts","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fvue","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fquick-starts\u002Fvue\u002Findex",[1599],{"title":1595,"path":1596,"stem":1597},{"title":1601,"path":1602,"stem":1603,"children":1604},"Starting points","\u002Fdocs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fstarting-points","docs\u002Fstudios\u002Fsites\u002Fdeploy\u002Fstarting-points\u002Findex",[1605],{"title":1601,"path":1602,"stem":1603},{"title":750,"path":1607,"stem":1608,"children":1609,"icon":1611},"\u002Fdocs\u002Fstudios\u002Fsites\u002Fgetting-started","docs\u002Fstudios\u002Fsites\u002Fgetting-started\u002Findex",[1610],{"title":750,"path":1607,"stem":1608,"icon":1611},"i-lucide-terminal",{"title":1613,"path":1614,"stem":1615,"children":1616,"icon":1099},"Production","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Findex",[1617,1618,1624,1630,1636,1642,1648],{"title":1613,"path":1614,"stem":1615,"icon":1099},{"title":1619,"path":1620,"stem":1621,"children":1622},"Deployments","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction\u002Fdeployments","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Fdeployments\u002Findex",[1623],{"title":1619,"path":1620,"stem":1621},{"title":1625,"path":1626,"stem":1627,"children":1628},"Domains","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction\u002Fdomains","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Fdomains\u002Findex",[1629],{"title":1625,"path":1626,"stem":1627},{"title":1631,"path":1632,"stem":1633,"children":1634},"Instant rollbacks","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction\u002Finstant-rollbacks","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Finstant-rollbacks\u002Findex",[1635],{"title":1631,"path":1632,"stem":1633},{"title":1637,"path":1638,"stem":1639,"children":1640},"Logs","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction\u002Flogs","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Flogs\u002Findex",[1641],{"title":1637,"path":1638,"stem":1639},{"title":1643,"path":1644,"stem":1645,"children":1646},"Previews","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction\u002Fpreviews","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Fpreviews\u002Findex",[1647],{"title":1643,"path":1644,"stem":1645},{"title":1649,"path":1650,"stem":1651,"children":1652},"Publishing a theme","\u002Fdocs\u002Fstudios\u002Fsites\u002Fproduction\u002Fpublishing-a-theme","docs\u002Fstudios\u002Fsites\u002Fproduction\u002Fpublishing-a-theme\u002Findex",[1653],{"title":1649,"path":1650,"stem":1651},{"title":1655,"path":1656,"stem":1657,"children":1658,"icon":1660},"Build the theme","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Findex",[1659,1661,1667,1673,1679,1685,1691,1697,1715],{"title":1655,"path":1656,"stem":1657,"icon":1660},"i-lucide-palette",{"title":1662,"path":1663,"stem":1664,"children":1665},"Theme anatomy","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Fanatomy","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Fanatomy\u002Findex",[1666],{"title":1662,"path":1663,"stem":1664},{"title":1668,"path":1669,"stem":1670,"children":1671},"Design tokens","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Fdesign-tokens","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Fdesign-tokens\u002Findex",[1672],{"title":1668,"path":1669,"stem":1670},{"title":1674,"path":1675,"stem":1676,"children":1677},"Frameworks","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Fframeworks","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Fframeworks\u002Findex",[1678],{"title":1674,"path":1675,"stem":1676},{"title":1680,"path":1681,"stem":1682,"children":1683},"The layer chain","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Flayer-chain","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Flayer-chain\u002Findex",[1684],{"title":1680,"path":1681,"stem":1682},{"title":1686,"path":1687,"stem":1688,"children":1689},"Local development","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Flocal-development","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Flocal-development\u002Findex",[1690],{"title":1686,"path":1687,"stem":1688},{"title":1692,"path":1693,"stem":1694,"children":1695},"Overriding","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Foverriding","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Foverriding\u002Findex",[1696],{"title":1692,"path":1693,"stem":1694},{"title":1698,"path":1699,"stem":1700,"children":1701},"Rendering","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Frendering","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Frendering\u002Findex",[1702,1703,1709],{"title":1698,"path":1699,"stem":1700},{"title":1704,"path":1705,"stem":1706,"children":1707},"SSR","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Frendering\u002Fssr","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Frendering\u002Fssr\u002Findex",[1708],{"title":1704,"path":1705,"stem":1706},{"title":1710,"path":1711,"stem":1712,"children":1713},"Static","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Frendering\u002Fstatic","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Frendering\u002Fstatic\u002Findex",[1714],{"title":1710,"path":1711,"stem":1712},{"title":1716,"path":1717,"stem":1718,"children":1719},"Service modes","\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Fservice-modes","docs\u002Fstudios\u002Fsites\u002Ftheme\u002Fservice-modes\u002Findex",[1720],{"title":1716,"path":1717,"stem":1718},{"title":1722,"path":1723,"stem":1724,"children":1725},"Tools","\u002Fdocs\u002Ftools","docs\u002Ftools\u002Findex",[1726,1727,1936],{"title":1722,"path":1723,"stem":1724},{"title":1728,"path":1729,"stem":1730,"children":1731},"Command line","\u002Fdocs\u002Ftools\u002Fcommand-line","docs\u002Ftools\u002Fcommand-line\u002Findex",[1732,1733,1739,1744,1750,1756,1762,1768,1774,1894,1900,1906,1912,1918,1924,1930],{"title":1728,"path":1729,"stem":1730},{"title":1734,"path":1735,"stem":1736,"children":1737},"Aliases","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Faliases","docs\u002Ftools\u002Fcommand-line\u002Faliases\u002Findex",[1738],{"title":1734,"path":1735,"stem":1736},{"title":223,"path":1740,"stem":1741,"children":1742},"\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fauthentication","docs\u002Ftools\u002Fcommand-line\u002Fauthentication\u002Findex",[1743],{"title":223,"path":1740,"stem":1741},{"title":1745,"path":1746,"stem":1747,"children":1748},"Commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fcommands","docs\u002Ftools\u002Fcommand-line\u002Fcommands\u002Findex",[1749],{"title":1745,"path":1746,"stem":1747},{"title":1751,"path":1752,"stem":1753,"children":1754},"Installation","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Finstallation","docs\u002Ftools\u002Fcommand-line\u002Finstallation\u002Findex",[1755],{"title":1751,"path":1752,"stem":1753},{"title":1757,"path":1758,"stem":1759,"children":1760},"Interactive use","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Finteractive","docs\u002Ftools\u002Fcommand-line\u002Finteractive\u002Findex",[1761],{"title":1757,"path":1758,"stem":1759},{"title":1763,"path":1764,"stem":1765,"children":1766},"Non-interactive use","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fnon-interactive","docs\u002Ftools\u002Fcommand-line\u002Fnon-interactive\u002Findex",[1767],{"title":1763,"path":1764,"stem":1765},{"title":1769,"path":1770,"stem":1771,"children":1772},"Project configuration","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fproject-configuration","docs\u002Ftools\u002Fcommand-line\u002Fproject-configuration\u002Findex",[1773],{"title":1769,"path":1770,"stem":1771},{"title":1775,"path":1776,"stem":1777,"children":1778},"Command reference","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Findex",[1779,1780,1786,1792,1798,1804,1810,1816,1822,1828,1834,1840,1846,1852,1858,1864,1870,1876,1882,1888],{"title":1775,"path":1776,"stem":1777},{"title":1781,"path":1782,"stem":1783,"children":1784},"About commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fabout","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fabout\u002Findex",[1785],{"title":1781,"path":1782,"stem":1783},{"title":1787,"path":1788,"stem":1789,"children":1790},"Apps commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fapps","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fapps\u002Findex",[1791],{"title":1787,"path":1788,"stem":1789},{"title":1793,"path":1794,"stem":1795,"children":1796},"Carts commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcarts","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcarts\u002Findex",[1797],{"title":1793,"path":1794,"stem":1795},{"title":1799,"path":1800,"stem":1801,"children":1802},"Channels commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fchannels","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fchannels\u002Findex",[1803],{"title":1799,"path":1800,"stem":1801},{"title":1805,"path":1806,"stem":1807,"children":1808},"Create commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcreate","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcreate\u002Findex",[1809],{"title":1805,"path":1806,"stem":1807},{"title":1811,"path":1812,"stem":1813,"children":1814},"Customers commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fcustomers\u002Findex",[1815],{"title":1811,"path":1812,"stem":1813},{"title":1817,"path":1818,"stem":1819,"children":1820},"Deploy commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fdeploy","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fdeploy\u002Findex",[1821],{"title":1817,"path":1818,"stem":1819},{"title":1823,"path":1824,"stem":1825,"children":1826},"Forms commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fforms","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fforms\u002Findex",[1827],{"title":1823,"path":1824,"stem":1825},{"title":1829,"path":1830,"stem":1831,"children":1832},"Markets commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmarkets","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fmarkets\u002Findex",[1833],{"title":1829,"path":1830,"stem":1831},{"title":1835,"path":1836,"stem":1837,"children":1838},"Order lists commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Forderlists","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Forderlists\u002Findex",[1839],{"title":1835,"path":1836,"stem":1837},{"title":1841,"path":1842,"stem":1843,"children":1844},"Orders commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Forders","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Forders\u002Findex",[1845],{"title":1841,"path":1842,"stem":1843},{"title":1847,"path":1848,"stem":1849,"children":1850},"Pages commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpages","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fpages\u002Findex",[1851],{"title":1847,"path":1848,"stem":1849},{"title":1853,"path":1854,"stem":1855,"children":1856},"Prices commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fprices","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fprices\u002Findex",[1857],{"title":1853,"path":1854,"stem":1855},{"title":1859,"path":1860,"stem":1861,"children":1862},"Products commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fproducts","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fproducts\u002Findex",[1863],{"title":1859,"path":1860,"stem":1861},{"title":1865,"path":1866,"stem":1867,"children":1868},"Search commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsearch","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsearch\u002Findex",[1869],{"title":1865,"path":1866,"stem":1867},{"title":1871,"path":1872,"stem":1873,"children":1874},"Settings commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsettings","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsettings\u002Findex",[1875],{"title":1871,"path":1872,"stem":1873},{"title":1877,"path":1878,"stem":1879,"children":1880},"Sites commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsites","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fsites\u002Findex",[1881],{"title":1877,"path":1878,"stem":1879},{"title":1883,"path":1884,"stem":1885,"children":1886},"Skills commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fskills","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fskills\u002Findex",[1887],{"title":1883,"path":1884,"stem":1885},{"title":1889,"path":1890,"stem":1891,"children":1892},"Storage commands","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Freference\u002Fstorage","docs\u002Ftools\u002Fcommand-line\u002Freference\u002Fstorage\u002Findex",[1893],{"title":1889,"path":1890,"stem":1891},{"title":1895,"path":1896,"stem":1897,"children":1898},"Interactive shell (REPL)","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Frepl","docs\u002Ftools\u002Fcommand-line\u002Frepl\u002Findex",[1899],{"title":1895,"path":1896,"stem":1897},{"title":1901,"path":1902,"stem":1903,"children":1904},"Scaffolding","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fscaffolding","docs\u002Ftools\u002Fcommand-line\u002Fscaffolding\u002Findex",[1905],{"title":1901,"path":1902,"stem":1903},{"title":1907,"path":1908,"stem":1909,"children":1910},"Scripting & output","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fscripting","docs\u002Ftools\u002Fcommand-line\u002Fscripting\u002Findex",[1911],{"title":1907,"path":1908,"stem":1909},{"title":1913,"path":1914,"stem":1915,"children":1916},"Skills","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fskills","docs\u002Ftools\u002Fcommand-line\u002Fskills\u002Findex",[1917],{"title":1913,"path":1914,"stem":1915},{"title":1919,"path":1920,"stem":1921,"children":1922},"Full-screen app (TUI)","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Ftui","docs\u002Ftools\u002Fcommand-line\u002Ftui\u002Findex",[1923],{"title":1919,"path":1920,"stem":1921},{"title":1925,"path":1926,"stem":1927,"children":1928},"Type generation","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Ftype-generation","docs\u002Ftools\u002Fcommand-line\u002Ftype-generation\u002Findex",[1929],{"title":1925,"path":1926,"stem":1927},{"title":1931,"path":1932,"stem":1933,"children":1934},"Background watchers","\u002Fdocs\u002Ftools\u002Fcommand-line\u002Fwatch","docs\u002Ftools\u002Fcommand-line\u002Fwatch\u002Findex",[1935],{"title":1931,"path":1932,"stem":1933},{"title":1937,"path":1938,"stem":1939,"children":1940},"Model Context Protocol","\u002Fdocs\u002Ftools\u002Fmcp","docs\u002Ftools\u002Fmcp\u002Findex",[1941,1942,1948,1954,1960,1966,1972,1978,1984],{"title":1937,"path":1938,"stem":1939},{"title":1943,"path":1944,"stem":1945,"children":1946},"revenexx docs MCP in Google Antigravity","\u002Fdocs\u002Ftools\u002Fmcp\u002Fantigravity","docs\u002Ftools\u002Fmcp\u002Fantigravity\u002Findex",[1947],{"title":1943,"path":1944,"stem":1945},{"title":1949,"path":1950,"stem":1951,"children":1952},"revenexx docs MCP in Claude Code","\u002Fdocs\u002Ftools\u002Fmcp\u002Fclaude-code","docs\u002Ftools\u002Fmcp\u002Fclaude-code\u002Findex",[1953],{"title":1949,"path":1950,"stem":1951},{"title":1955,"path":1956,"stem":1957,"children":1958},"revenexx docs MCP in Claude Desktop","\u002Fdocs\u002Ftools\u002Fmcp\u002Fclaude-desktop","docs\u002Ftools\u002Fmcp\u002Fclaude-desktop\u002Findex",[1959],{"title":1955,"path":1956,"stem":1957},{"title":1961,"path":1962,"stem":1963,"children":1964},"revenexx docs MCP in Cursor","\u002Fdocs\u002Ftools\u002Fmcp\u002Fcursor","docs\u002Ftools\u002Fmcp\u002Fcursor\u002Findex",[1965],{"title":1961,"path":1962,"stem":1963},{"title":1967,"path":1968,"stem":1969,"children":1970},"revenexx docs MCP in OpenCode","\u002Fdocs\u002Ftools\u002Fmcp\u002Fopencode","docs\u002Ftools\u002Fmcp\u002Fopencode\u002Findex",[1971],{"title":1967,"path":1968,"stem":1969},{"title":1973,"path":1974,"stem":1975,"children":1976},"revenexx docs MCP in VS Code","\u002Fdocs\u002Ftools\u002Fmcp\u002Fvscode","docs\u002Ftools\u002Fmcp\u002Fvscode\u002Findex",[1977],{"title":1973,"path":1974,"stem":1975},{"title":1979,"path":1980,"stem":1981,"children":1982},"revenexx docs MCP in Windsurf","\u002Fdocs\u002Ftools\u002Fmcp\u002Fwindsurf","docs\u002Ftools\u002Fmcp\u002Fwindsurf\u002Findex",[1983],{"title":1979,"path":1980,"stem":1981},{"title":1985,"path":1986,"stem":1987,"children":1988},"revenexx docs MCP in Zenflow","\u002Fdocs\u002Ftools\u002Fmcp\u002Fzenflow","docs\u002Ftools\u002Fmcp\u002Fzenflow\u002Findex",[1989],{"title":1985,"path":1986,"stem":1987},{"id":1991,"title":1668,"body":1992,"description":3253,"extension":3254,"landing":3255,"links":3255,"meta":3256,"navigation":3258,"path":1669,"seo":3259,"sitemap":3260,"stem":1670,"__hash__":3261},"docs\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Fdesign-tokens\u002Findex.md",{"type":1993,"value":1994,"toc":3242},"minimark",[1995,2009,2012,2017,2024,2156,2159,2235,2238,2283,2287,2306,2436,2443,2447,2458,2521,2528,2661,2664,2667,2674,2683,2776,2789,2793,2796,2805,2827,2831,2842,3031,3034,3038,3044,3203,3207,3238],[1996,1997,1998,1999,2003,2004,2008],"p",{},"A theme's look is ",[2000,2001,2002],"strong",{},"data, not code",". Tokens are CSS custom properties, components read ",[2005,2006,2007],"code",{},"var(--…)"," instead of hard-coded values, and each tenant's brand is applied at runtime. The same build serves every customer; a rebrand is a token change, not a redeploy.",[1996,2010,2011],{},"That's the mechanism a multi-tenant storefront needs. If colours and fonts were baked into component CSS, every customer would need a fork or a rebuild.",[2013,2014,2016],"h2",{"id":2015},"where-tokens-live","Where tokens live",[1996,2018,2019,2020,2023],{},"The base layer builds on ",[2000,2021,2022],{},"Tailwind 4",", which configures itself from CSS rather than a JavaScript config file. A theme's stylesheet imports Tailwind and the component library, then declares its own tokens:",[2025,2026,2032],"pre",{"className":2027,"code":2028,"filename":2029,"language":2030,"meta":2031,"style":2031},"language-css shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","@import \"tailwindcss\";\n@import \"@nuxt\u002Fui\";\n\n\u002F* Your own design tokens. @theme is Tailwind 4's token layer:\n   what you declare here becomes both a CSS variable and a utility. *\u002F\n@theme {\n  --color-brand-500: oklch(58.5% 0.233 277.117);\n  --font-display: \"Inter\", system-ui, sans-serif;\n  --radius-card: 0.5rem;\n}\n","app\u002Fassets\u002Fcss\u002Fmain.css","css","",[2005,2033,2034,2057,2071,2078,2085,2091,2100,2125,2144,2150],{"__ignoreMap":2031},[2035,2036,2039,2043,2047,2051,2054],"span",{"class":2037,"line":2038},"line",1,[2035,2040,2042],{"class":2041},"s7zQu","@import",[2035,2044,2046],{"class":2045},"sMK4o"," \"",[2035,2048,2050],{"class":2049},"sfazB","tailwindcss",[2035,2052,2053],{"class":2045},"\"",[2035,2055,2056],{"class":2045},";\n",[2035,2058,2060,2062,2064,2067,2069],{"class":2037,"line":2059},2,[2035,2061,2042],{"class":2041},[2035,2063,2046],{"class":2045},[2035,2065,2066],{"class":2049},"@nuxt\u002Fui",[2035,2068,2053],{"class":2045},[2035,2070,2056],{"class":2045},[2035,2072,2074],{"class":2037,"line":2073},3,[2035,2075,2077],{"emptyLinePlaceholder":2076},true,"\n",[2035,2079,2081],{"class":2037,"line":2080},4,[2035,2082,2084],{"class":2083},"sHwdD","\u002F* Your own design tokens. @theme is Tailwind 4's token layer:\n",[2035,2086,2088],{"class":2037,"line":2087},5,[2035,2089,2090],{"class":2083},"   what you declare here becomes both a CSS variable and a utility. *\u002F\n",[2035,2092,2094,2097],{"class":2037,"line":2093},6,[2035,2095,2096],{"class":2041},"@theme",[2035,2098,2099],{"class":2045}," {\n",[2035,2101,2103,2107,2110,2114,2117,2119,2122],{"class":2037,"line":2102},7,[2035,2104,2106],{"class":2105},"sTEyZ","  --color-brand-500: oklch(58.5% 0",[2035,2108,2109],{"class":2045},".",[2035,2111,2113],{"class":2112},"sBMFI","233",[2035,2115,2116],{"class":2105}," 277",[2035,2118,2109],{"class":2045},[2035,2120,2121],{"class":2112},"117",[2035,2123,2124],{"class":2105},");\n",[2035,2126,2128,2131,2134,2137,2139,2142],{"class":2037,"line":2127},8,[2035,2129,2130],{"class":2105},"  --font-display: \"Inter\"",[2035,2132,2133],{"class":2045},",",[2035,2135,2136],{"class":2112}," system-ui",[2035,2138,2133],{"class":2045},[2035,2140,2141],{"class":2112}," sans-serif",[2035,2143,2056],{"class":2105},[2035,2145,2147],{"class":2037,"line":2146},9,[2035,2148,2149],{"class":2105},"  --radius-card: 0.5rem;\n",[2035,2151,2153],{"class":2037,"line":2152},10,[2035,2154,2155],{"class":2105},"}\n",[1996,2157,2158],{},"Three layers of variable end up on the page, and it helps to keep them apart:",[2160,2161,2162,2178],"table",{},[2163,2164,2165],"thead",{},[2166,2167,2168,2172,2175],"tr",{},[2169,2170,2171],"th",{},"Layer",[2169,2173,2174],{},"Looks like",[2169,2176,2177],{},"Who owns it",[2179,2180,2181,2205,2224],"tbody",{},[2166,2182,2183,2187,2202],{},[2184,2185,2186],"td",{},"Tailwind theme tokens",[2184,2188,2189,2192,2193,2192,2196,2199,2200],{},[2005,2190,2191],{},"--color-*",", ",[2005,2194,2195],{},"--font-*",[2005,2197,2198],{},"--radius-*"," inside ",[2005,2201,2096],{},[2184,2203,2204],{},"You. Declaring one also generates the matching utility class.",[2166,2206,2207,2210,2221],{},[2184,2208,2209],{},"Component library variables",[2184,2211,2212,2192,2215,2192,2218],{},[2005,2213,2214],{},"--ui-primary",[2005,2216,2217],{},"--ui-container",[2005,2219,2220],{},"--ui-header-height",[2184,2222,2223],{},"The component library, overridable from your CSS.",[2166,2225,2226,2229,2232],{},[2184,2227,2228],{},"Your semantic tokens",[2184,2230,2231],{},"whatever you name them",[2184,2233,2234],{},"You, for anything the two above don't cover.",[1996,2236,2237],{},"Overriding a component-library variable is a plain CSS declaration:",[2025,2239,2241],{"className":2027,"code":2240,"filename":2029,"language":2030,"meta":2031,"style":2031},":root {\n  --ui-container: 1536px;\n  --ui-header-height: 5.75rem;\n}\n",[2005,2242,2243,2254,2267,2279],{"__ignoreMap":2031},[2035,2244,2245,2248,2252],{"class":2037,"line":2038},[2035,2246,2247],{"class":2045},":",[2035,2249,2251],{"class":2250},"spNyl","root",[2035,2253,2099],{"class":2045},[2035,2255,2256,2259,2261,2265],{"class":2037,"line":2059},[2035,2257,2258],{"class":2105},"  --ui-container",[2035,2260,2247],{"class":2045},[2035,2262,2264],{"class":2263},"sbssI"," 1536px",[2035,2266,2056],{"class":2045},[2035,2268,2269,2272,2274,2277],{"class":2037,"line":2073},[2035,2270,2271],{"class":2105},"  --ui-header-height",[2035,2273,2247],{"class":2045},[2035,2275,2276],{"class":2263}," 5.75rem",[2035,2278,2056],{"class":2045},[2035,2280,2281],{"class":2037,"line":2080},[2035,2282,2155],{"class":2045},[2013,2284,2286],{"id":2285},"name-tokens-for-their-role","Name tokens for their role",[1996,2288,2289,2290,2293,2294,2297,2298,2301,2302,2305],{},"A ",[2005,2291,2292],{},"--color-primary"," survives a rebrand from blue to green; a ",[2005,2295,2296],{},"--color-blue-500"," becomes a lie the moment the brand colour changes. Keep the set small while you're at it — define twenty or thirty core tokens and derive the rest with ",[2005,2299,2300],{},"color-mix()"," and ",[2005,2303,2304],{},"calc()"," rather than hand-maintaining a hundred literals.",[2025,2307,2309],{"className":2027,"code":2308,"language":2030,"meta":2031,"style":2031},".btn-primary {\n  background: var(--color-primary);\n  border-radius: var(--radius-card);\n  font-family: var(--font-display);\n}\n.btn-primary:hover {\n  \u002F* derived, not a second hand-maintained token *\u002F\n  background: color-mix(in oklch, var(--color-primary) 85%, black);\n}\n",[2005,2310,2311,2320,2339,2355,2371,2375,2388,2393,2432],{"__ignoreMap":2031},[2035,2312,2313,2315,2318],{"class":2037,"line":2038},[2035,2314,2109],{"class":2045},[2035,2316,2317],{"class":2112},"btn-primary",[2035,2319,2099],{"class":2045},[2035,2321,2322,2326,2328,2332,2335,2337],{"class":2037,"line":2059},[2035,2323,2325],{"class":2324},"sqsOY","  background",[2035,2327,2247],{"class":2045},[2035,2329,2331],{"class":2330},"s2Zo4"," var",[2035,2333,2334],{"class":2045},"(",[2035,2336,2292],{"class":2105},[2035,2338,2124],{"class":2045},[2035,2340,2341,2344,2346,2348,2350,2353],{"class":2037,"line":2073},[2035,2342,2343],{"class":2324},"  border-radius",[2035,2345,2247],{"class":2045},[2035,2347,2331],{"class":2330},[2035,2349,2334],{"class":2045},[2035,2351,2352],{"class":2105},"--radius-card",[2035,2354,2124],{"class":2045},[2035,2356,2357,2360,2362,2364,2366,2369],{"class":2037,"line":2080},[2035,2358,2359],{"class":2324},"  font-family",[2035,2361,2247],{"class":2045},[2035,2363,2331],{"class":2330},[2035,2365,2334],{"class":2045},[2035,2367,2368],{"class":2105},"--font-display",[2035,2370,2124],{"class":2045},[2035,2372,2373],{"class":2037,"line":2087},[2035,2374,2155],{"class":2045},[2035,2376,2377,2379,2381,2383,2386],{"class":2037,"line":2093},[2035,2378,2109],{"class":2045},[2035,2380,2317],{"class":2112},[2035,2382,2247],{"class":2045},[2035,2384,2385],{"class":2250},"hover",[2035,2387,2099],{"class":2045},[2035,2389,2390],{"class":2037,"line":2102},[2035,2391,2392],{"class":2083},"  \u002F* derived, not a second hand-maintained token *\u002F\n",[2035,2394,2395,2397,2399,2402,2404,2408,2411,2413,2415,2417,2419,2422,2425,2427,2430],{"class":2037,"line":2127},[2035,2396,2325],{"class":2324},[2035,2398,2247],{"class":2045},[2035,2400,2401],{"class":2330}," color-mix",[2035,2403,2334],{"class":2045},[2035,2405,2407],{"class":2406},"sHdIc","in",[2035,2409,2410],{"class":2406}," oklch",[2035,2412,2133],{"class":2045},[2035,2414,2331],{"class":2330},[2035,2416,2334],{"class":2045},[2035,2418,2292],{"class":2105},[2035,2420,2421],{"class":2045},")",[2035,2423,2424],{"class":2263}," 85%",[2035,2426,2133],{"class":2045},[2035,2428,2429],{"class":2105}," black",[2035,2431,2124],{"class":2045},[2035,2433,2434],{"class":2037,"line":2146},[2035,2435,2155],{"class":2045},[1996,2437,2438,2439,2442],{},"Centralise the tokens in one stylesheet rather than scattering overrides through component ",[2005,2440,2441],{},"\u003Cstyle scoped>"," blocks, so there's a single source of truth.",[2013,2444,2446],{"id":2445},"the-shipped-palette-and-theme-presets","The shipped palette and theme presets",[1996,2448,2449,2452,2453,2109],{},[2005,2450,2451],{},"@revenexx\u002Fcover"," ships a colour palette and a set of named theme presets, both importable through the package's ",[2454,2455,2457],"a",{"href":2456},"\u002Fdocs\u002Fstudios\u002Fsites\u002Ftheme\u002Foverriding#deep-imports-keep-the-original-wrap-it","deep-import map",[2025,2459,2463],{"className":2460,"code":2461,"language":2462,"meta":2031,"style":2031},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { palette, COLOR_SHADES } from '@revenexx\u002Fcover\u002Fconfig\u002Fpalette'\nimport { themes, DEFAULT_THEME_ID } from '@revenexx\u002Fcover\u002Fconfig\u002Fthemes'\n","ts",[2005,2464,2465,2496],{"__ignoreMap":2031},[2035,2466,2467,2470,2473,2476,2478,2481,2484,2487,2490,2493],{"class":2037,"line":2038},[2035,2468,2469],{"class":2041},"import",[2035,2471,2472],{"class":2045}," {",[2035,2474,2475],{"class":2105}," palette",[2035,2477,2133],{"class":2045},[2035,2479,2480],{"class":2105}," COLOR_SHADES",[2035,2482,2483],{"class":2045}," }",[2035,2485,2486],{"class":2041}," from",[2035,2488,2489],{"class":2045}," '",[2035,2491,2492],{"class":2049},"@revenexx\u002Fcover\u002Fconfig\u002Fpalette",[2035,2494,2495],{"class":2045},"'\n",[2035,2497,2498,2500,2502,2505,2507,2510,2512,2514,2516,2519],{"class":2037,"line":2059},[2035,2499,2469],{"class":2041},[2035,2501,2472],{"class":2045},[2035,2503,2504],{"class":2105}," themes",[2035,2506,2133],{"class":2045},[2035,2508,2509],{"class":2105}," DEFAULT_THEME_ID",[2035,2511,2483],{"class":2045},[2035,2513,2486],{"class":2041},[2035,2515,2489],{"class":2045},[2035,2517,2518],{"class":2049},"@revenexx\u002Fcover\u002Fconfig\u002Fthemes",[2035,2520,2495],{"class":2045},[1996,2522,2523,2524,2527],{},"The palette is a map of colour name to the eleven Tailwind shades, in ",[2005,2525,2526],{},"oklch",". A preset picks a primary and a neutral out of that palette and adds a corner radius and an icon weight:",[2025,2529,2532],{"className":2460,"code":2530,"filename":2531,"language":2462,"meta":2031,"style":2031},"{\n  id: 'midnight',\n  name: 'Midnight',\n  colors: { primary: 'indigo', neutral: 'zinc' },\n  tokens: { radius: '0.375rem' },\n  icons: { weight: 'linear' },\n}\n","the shape of a preset",[2005,2533,2534,2539,2557,2573,2611,2634,2657],{"__ignoreMap":2031},[2035,2535,2536],{"class":2037,"line":2038},[2035,2537,2538],{"class":2045},"{\n",[2035,2540,2541,2544,2546,2548,2551,2554],{"class":2037,"line":2059},[2035,2542,2543],{"class":2112},"  id",[2035,2545,2247],{"class":2045},[2035,2547,2489],{"class":2045},[2035,2549,2550],{"class":2049},"midnight",[2035,2552,2553],{"class":2045},"'",[2035,2555,2556],{"class":2045},",\n",[2035,2558,2559,2562,2564,2566,2569,2571],{"class":2037,"line":2073},[2035,2560,2561],{"class":2112},"  name",[2035,2563,2247],{"class":2045},[2035,2565,2489],{"class":2045},[2035,2567,2568],{"class":2049},"Midnight",[2035,2570,2553],{"class":2045},[2035,2572,2556],{"class":2045},[2035,2574,2575,2578,2580,2582,2585,2587,2589,2592,2594,2596,2599,2601,2603,2606,2608],{"class":2037,"line":2080},[2035,2576,2577],{"class":2112},"  colors",[2035,2579,2247],{"class":2045},[2035,2581,2472],{"class":2045},[2035,2583,2584],{"class":2112}," primary",[2035,2586,2247],{"class":2045},[2035,2588,2489],{"class":2045},[2035,2590,2591],{"class":2049},"indigo",[2035,2593,2553],{"class":2045},[2035,2595,2133],{"class":2045},[2035,2597,2598],{"class":2112}," neutral",[2035,2600,2247],{"class":2045},[2035,2602,2489],{"class":2045},[2035,2604,2605],{"class":2049},"zinc",[2035,2607,2553],{"class":2045},[2035,2609,2610],{"class":2045}," },\n",[2035,2612,2613,2616,2618,2620,2623,2625,2627,2630,2632],{"class":2037,"line":2087},[2035,2614,2615],{"class":2112},"  tokens",[2035,2617,2247],{"class":2045},[2035,2619,2472],{"class":2045},[2035,2621,2622],{"class":2112}," radius",[2035,2624,2247],{"class":2045},[2035,2626,2489],{"class":2045},[2035,2628,2629],{"class":2049},"0.375rem",[2035,2631,2553],{"class":2045},[2035,2633,2610],{"class":2045},[2035,2635,2636,2639,2641,2643,2646,2648,2650,2653,2655],{"class":2037,"line":2093},[2035,2637,2638],{"class":2112},"  icons",[2035,2640,2247],{"class":2045},[2035,2642,2472],{"class":2045},[2035,2644,2645],{"class":2112}," weight",[2035,2647,2247],{"class":2045},[2035,2649,2489],{"class":2045},[2035,2651,2652],{"class":2049},"linear",[2035,2654,2553],{"class":2045},[2035,2656,2610],{"class":2045},[2035,2658,2659],{"class":2037,"line":2102},[2035,2660,2155],{"class":2045},[1996,2662,2663],{},"Presets are how a customer picks a look without a developer: the theme store applies the active preset's colours, radius, and icon weight at runtime. Use them as your starting point and add tokens for the parts a preset doesn't reach.",[1996,2665,2666],{},"Blökkli pages can also carry per-page appearance — a colour scheme, a corner style, a spacing density, a font family — chosen by an editor and applied when the page renders. Your blocks get that for free by reading tokens rather than literals.",[2013,2668,2670,2671],{"id":2669},"what-belongs-in-appconfigts","What belongs in ",[2005,2672,2673],{},"app.config.ts",[1996,2675,2676,2678,2679,2682],{},[2005,2677,2673],{}," is the theme's runtime configuration object, merged across the ",[2454,2680,2681],{"href":1681},"layer chain",". Two kinds of appearance setting live there rather than in CSS:",[2025,2684,2687],{"className":2460,"code":2685,"filename":2686,"language":2462,"meta":2031,"style":2031},"export default defineAppConfig({\n  \u002F\u002F Icon mapping — which icon set the component library's built-in icons resolve to.\n  ui: {\n    icons: { \u002F* … *\u002F },\n  },\n  \u002F\u002F Behavioural UI defaults the layer's components read.\n  search: {\n    autocompleteMinChars: 2,\n  },\n})\n","app\u002Fapp.config.ts",[2005,2688,2689,2704,2709,2719,2733,2738,2743,2752,2764,2768],{"__ignoreMap":2031},[2035,2690,2691,2694,2697,2700,2702],{"class":2037,"line":2038},[2035,2692,2693],{"class":2041},"export",[2035,2695,2696],{"class":2041}," default",[2035,2698,2699],{"class":2330}," defineAppConfig",[2035,2701,2334],{"class":2105},[2035,2703,2538],{"class":2045},[2035,2705,2706],{"class":2037,"line":2059},[2035,2707,2708],{"class":2083},"  \u002F\u002F Icon mapping — which icon set the component library's built-in icons resolve to.\n",[2035,2710,2711,2715,2717],{"class":2037,"line":2073},[2035,2712,2714],{"class":2713},"swJcz","  ui",[2035,2716,2247],{"class":2045},[2035,2718,2099],{"class":2045},[2035,2720,2721,2724,2726,2728,2731],{"class":2037,"line":2080},[2035,2722,2723],{"class":2713},"    icons",[2035,2725,2247],{"class":2045},[2035,2727,2472],{"class":2045},[2035,2729,2730],{"class":2083}," \u002F* … *\u002F",[2035,2732,2610],{"class":2045},[2035,2734,2735],{"class":2037,"line":2087},[2035,2736,2737],{"class":2045},"  },\n",[2035,2739,2740],{"class":2037,"line":2093},[2035,2741,2742],{"class":2083},"  \u002F\u002F Behavioural UI defaults the layer's components read.\n",[2035,2744,2745,2748,2750],{"class":2037,"line":2102},[2035,2746,2747],{"class":2713},"  search",[2035,2749,2247],{"class":2045},[2035,2751,2099],{"class":2045},[2035,2753,2754,2757,2759,2762],{"class":2037,"line":2127},[2035,2755,2756],{"class":2713},"    autocompleteMinChars",[2035,2758,2247],{"class":2045},[2035,2760,2761],{"class":2263}," 2",[2035,2763,2556],{"class":2045},[2035,2765,2766],{"class":2037,"line":2146},[2035,2767,2737],{"class":2045},[2035,2769,2770,2773],{"class":2037,"line":2152},[2035,2771,2772],{"class":2045},"}",[2035,2774,2775],{"class":2105},")\n",[1996,2777,2778,2779,2784,2785,2788],{},"The rule of thumb: ",[2000,2780,2781,2782,2109],{},"colours, spacing, and type go in CSS; choices and mappings go in ",[2005,2783,2673],{}," The ",[2454,2786,2787],{"href":1717},"service keys"," live in the same file, which is worth knowing so you don't create a second one.",[2013,2790,2792],{"id":2791},"branding-per-tenant","Branding per tenant",[1996,2794,2795],{},"One deployed theme serves many tenants, each on its own domain, each with its own brand. The pattern is: resolve the tenant per request, fetch its branding during server-side rendering, and inject the token overrides at the root — so the very first byte already carries the right brand and there's no flash of the default palette.",[1996,2797,2798,2799,2804],{},"The step-by-step version, with the server route and the root component, is in ",[2000,2800,2801],{},[2454,2802,127],{"href":2803},"\u002Fdocs\u002Fguides\u002Fthemes\u002Ftheme-tokens-and-styling\u002F",". Two rules from it are worth repeating here because they're easy to get wrong:",[2806,2807,2808,2815],"ul",{},[2809,2810,2811,2814],"li",{},[2000,2812,2813],{},"Fetch branding during SSR, not on mount."," Applying tokens on the client produces a visible flash of the default palette.",[2809,2816,2817,2820,2821,2824,2825,2109],{},[2000,2818,2819],{},"Partition any branding cache by tenant."," Tenant tokens change rarely, so caching them is right — but a cache keyed only by ",[2005,2822,2823],{},"\"branding\""," will serve one tenant's colours to another. See ",[2454,2826,1469],{"href":1470},[2013,2828,2830],{"id":2829},"light-and-dark","Light and dark",[1996,2832,2833,2834,2837,2838,2841],{},"Set ",[2005,2835,2836],{},"color-scheme: light dark"," on ",[2005,2839,2840],{},":root"," so form controls and scrollbars follow the user's preference, then provide the dark overrides — either following the system preference or driven by an attribute for an explicit toggle:",[2025,2843,2845],{"className":2027,"code":2844,"filename":2029,"language":2030,"meta":2031,"style":2031},":root {\n  color-scheme: light dark;\n}\n\n@media (prefers-color-scheme: dark) {\n  :root {\n    --color-surface: oklch(21% 0.006 285.885);\n    --color-text: oklch(96.7% 0.001 286.375);\n  }\n}\n\n[data-theme='dark'] {\n  --color-surface: oklch(21% 0.006 285.885);\n  --color-text: oklch(96.7% 0.001 286.375);\n}\n",[2005,2846,2847,2855,2867,2871,2875,2895,2904,2926,2948,2953,2957,2962,2986,3006,3026],{"__ignoreMap":2031},[2035,2848,2849,2851,2853],{"class":2037,"line":2038},[2035,2850,2247],{"class":2045},[2035,2852,2251],{"class":2250},[2035,2854,2099],{"class":2045},[2035,2856,2857,2860,2862,2865],{"class":2037,"line":2059},[2035,2858,2859],{"class":2324},"  color-scheme",[2035,2861,2247],{"class":2045},[2035,2863,2864],{"class":2105}," light dark",[2035,2866,2056],{"class":2045},[2035,2868,2869],{"class":2037,"line":2073},[2035,2870,2155],{"class":2045},[2035,2872,2873],{"class":2037,"line":2080},[2035,2874,2077],{"emptyLinePlaceholder":2076},[2035,2876,2877,2880,2883,2886,2888,2891,2893],{"class":2037,"line":2087},[2035,2878,2879],{"class":2041},"@media",[2035,2881,2882],{"class":2045}," (",[2035,2884,2885],{"class":2105},"prefers-color-scheme",[2035,2887,2247],{"class":2045},[2035,2889,2890],{"class":2105}," dark",[2035,2892,2421],{"class":2045},[2035,2894,2099],{"class":2045},[2035,2896,2897,2900,2902],{"class":2037,"line":2093},[2035,2898,2899],{"class":2045},"  :",[2035,2901,2251],{"class":2250},[2035,2903,2099],{"class":2045},[2035,2905,2906,2909,2911,2913,2915,2918,2921,2924],{"class":2037,"line":2102},[2035,2907,2908],{"class":2105},"    --color-surface",[2035,2910,2247],{"class":2045},[2035,2912,2410],{"class":2330},[2035,2914,2334],{"class":2045},[2035,2916,2917],{"class":2263},"21%",[2035,2919,2920],{"class":2263}," 0.006",[2035,2922,2923],{"class":2263}," 285.885",[2035,2925,2124],{"class":2045},[2035,2927,2928,2931,2933,2935,2937,2940,2943,2946],{"class":2037,"line":2127},[2035,2929,2930],{"class":2105},"    --color-text",[2035,2932,2247],{"class":2045},[2035,2934,2410],{"class":2330},[2035,2936,2334],{"class":2045},[2035,2938,2939],{"class":2263},"96.7%",[2035,2941,2942],{"class":2263}," 0.001",[2035,2944,2945],{"class":2263}," 286.375",[2035,2947,2124],{"class":2045},[2035,2949,2950],{"class":2037,"line":2146},[2035,2951,2952],{"class":2045},"  }\n",[2035,2954,2955],{"class":2037,"line":2152},[2035,2956,2155],{"class":2045},[2035,2958,2960],{"class":2037,"line":2959},11,[2035,2961,2077],{"emptyLinePlaceholder":2076},[2035,2963,2965,2968,2971,2974,2976,2979,2981,2984],{"class":2037,"line":2964},12,[2035,2966,2967],{"class":2045},"[",[2035,2969,2970],{"class":2250},"data-theme",[2035,2972,2973],{"class":2045},"=",[2035,2975,2553],{"class":2045},[2035,2977,2978],{"class":2049},"dark",[2035,2980,2553],{"class":2045},[2035,2982,2983],{"class":2045},"]",[2035,2985,2099],{"class":2045},[2035,2987,2989,2992,2994,2996,2998,3000,3002,3004],{"class":2037,"line":2988},13,[2035,2990,2991],{"class":2105},"  --color-surface",[2035,2993,2247],{"class":2045},[2035,2995,2410],{"class":2330},[2035,2997,2334],{"class":2045},[2035,2999,2917],{"class":2263},[2035,3001,2920],{"class":2263},[2035,3003,2923],{"class":2263},[2035,3005,2124],{"class":2045},[2035,3007,3009,3012,3014,3016,3018,3020,3022,3024],{"class":2037,"line":3008},14,[2035,3010,3011],{"class":2105},"  --color-text",[2035,3013,2247],{"class":2045},[2035,3015,2410],{"class":2330},[2035,3017,2334],{"class":2045},[2035,3019,2939],{"class":2263},[2035,3021,2942],{"class":2263},[2035,3023,2945],{"class":2263},[2035,3025,2124],{"class":2045},[2035,3027,3029],{"class":2037,"line":3028},15,[2035,3030,2155],{"class":2045},[1996,3032,3033],{},"Test both modes before you ship. A contrast regression is easy to miss in one mode and obvious in the other.",[2013,3035,3037],{"id":3036},"serving-per-tenant-logos-and-assets","Serving per-tenant logos and assets",[1996,3039,3040,3041,3043],{},"Branding is more than colour. Serve each tenant's logo, favicon, and social images from the branding payload rather than bundling one customer's assets into the theme — the assets themselves belong in ",[2454,3042,325],{"href":1464},", where they can be resized and reformatted at request time.",[2025,3045,3050],{"className":3046,"code":3047,"filename":3048,"language":3049,"meta":2031,"style":2031},"language-vue shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cscript setup lang=\"ts\">\nconst { data: branding } = await useFetch('\u002Fapi\u002Fbranding')\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003CNuxtImg :src=\"branding?.logoUrl\" alt=\"Storefront logo\" width=\"160\" height=\"40\" \u002F>\n\u003C\u002Ftemplate>\n","app\u002Fcomponents\u002FSiteLogo.vue","vue",[2005,3051,3052,3077,3114,3123,3127,3136,3195],{"__ignoreMap":2031},[2035,3053,3054,3057,3060,3063,3066,3068,3070,3072,3074],{"class":2037,"line":2038},[2035,3055,3056],{"class":2045},"\u003C",[2035,3058,3059],{"class":2713},"script",[2035,3061,3062],{"class":2250}," setup",[2035,3064,3065],{"class":2250}," lang",[2035,3067,2973],{"class":2045},[2035,3069,2053],{"class":2045},[2035,3071,2462],{"class":2049},[2035,3073,2053],{"class":2045},[2035,3075,3076],{"class":2045},">\n",[2035,3078,3079,3082,3084,3087,3089,3092,3094,3097,3100,3103,3105,3107,3110,3112],{"class":2037,"line":2059},[2035,3080,3081],{"class":2250},"const",[2035,3083,2472],{"class":2045},[2035,3085,3086],{"class":2713}," data",[2035,3088,2247],{"class":2045},[2035,3090,3091],{"class":2105}," branding ",[2035,3093,2772],{"class":2045},[2035,3095,3096],{"class":2045}," =",[2035,3098,3099],{"class":2041}," await",[2035,3101,3102],{"class":2330}," useFetch",[2035,3104,2334],{"class":2105},[2035,3106,2553],{"class":2045},[2035,3108,3109],{"class":2049},"\u002Fapi\u002Fbranding",[2035,3111,2553],{"class":2045},[2035,3113,2775],{"class":2105},[2035,3115,3116,3119,3121],{"class":2037,"line":2073},[2035,3117,3118],{"class":2045},"\u003C\u002F",[2035,3120,3059],{"class":2713},[2035,3122,3076],{"class":2045},[2035,3124,3125],{"class":2037,"line":2080},[2035,3126,2077],{"emptyLinePlaceholder":2076},[2035,3128,3129,3131,3134],{"class":2037,"line":2087},[2035,3130,3056],{"class":2045},[2035,3132,3133],{"class":2713},"template",[2035,3135,3076],{"class":2045},[2035,3137,3138,3141,3144,3147,3149,3151,3154,3156,3159,3161,3163,3166,3168,3171,3173,3175,3178,3180,3183,3185,3187,3190,3192],{"class":2037,"line":2093},[2035,3139,3140],{"class":2045},"  \u003C",[2035,3142,3143],{"class":2713},"NuxtImg",[2035,3145,3146],{"class":2250}," :src",[2035,3148,2973],{"class":2045},[2035,3150,2053],{"class":2045},[2035,3152,3153],{"class":2049},"branding?.logoUrl",[2035,3155,2053],{"class":2045},[2035,3157,3158],{"class":2250}," alt",[2035,3160,2973],{"class":2045},[2035,3162,2053],{"class":2045},[2035,3164,3165],{"class":2049},"Storefront logo",[2035,3167,2053],{"class":2045},[2035,3169,3170],{"class":2250}," width",[2035,3172,2973],{"class":2045},[2035,3174,2053],{"class":2045},[2035,3176,3177],{"class":2049},"160",[2035,3179,2053],{"class":2045},[2035,3181,3182],{"class":2250}," height",[2035,3184,2973],{"class":2045},[2035,3186,2053],{"class":2045},[2035,3188,3189],{"class":2049},"40",[2035,3191,2053],{"class":2045},[2035,3193,3194],{"class":2045}," \u002F>\n",[2035,3196,3197,3199,3201],{"class":2037,"line":2102},[2035,3198,3118],{"class":2045},[2035,3200,3133],{"class":2713},[2035,3202,3076],{"class":2045},[2013,3204,3206],{"id":3205},"next-steps","Next steps",[2806,3208,3209,3216,3224,3231],{},[2809,3210,3211,3215],{},[2000,3212,3213],{},[2454,3214,127],{"href":2803}," — the tutorial, with the per-tenant branding route written out.",[2809,3217,3218,3223],{},[2000,3219,3220],{},[2454,3221,3222],{"href":1693},"Overriding the base layer"," — when a token isn't enough.",[2809,3225,3226,3230],{},[2000,3227,3228],{},[2454,3229,1469],{"href":1470}," — cache partitioning and per-request tenant state.",[2809,3232,3233,3237],{},[2000,3234,3235],{},[2454,3236,1463],{"href":1464}," — where logos and images come from.",[3239,3240,3241],"style",{},"html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sqsOY, html code.shiki .sqsOY{--shiki-light:#8796B0;--shiki-default:#B2CCD6;--shiki-dark:#B2CCD6}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}",{"title":2031,"searchDepth":2059,"depth":2059,"links":3243},[3244,3245,3246,3247,3249,3250,3251,3252],{"id":2015,"depth":2059,"text":2016},{"id":2285,"depth":2059,"text":2286},{"id":2445,"depth":2059,"text":2446},{"id":2669,"depth":2059,"text":3248},"What belongs in app.config.ts",{"id":2791,"depth":2059,"text":2792},{"id":2829,"depth":2059,"text":2830},{"id":3036,"depth":2059,"text":3037},{"id":3205,"depth":2059,"text":3206},"Brand a theme with CSS custom properties — the Tailwind 4 token layer, the shipped palette and theme presets, and what belongs in app.config.ts.","md",null,{"status":3257},"published",{"title":1668},{"title":1668,"description":3253},{"loc":1669},"8-Qg_lVGy02qFzKm4fCZSmkKHLH-MN-Oa9Nnx9E-OPU",1788429676719]