This page explains what the frontend product needs to run and what it is built from: runtime requirements, the core framework and libraries, and the Laioutr packages that form the base of every frontend project.
To run a Laioutr frontend project you need:
| Requirement | Details |
|---|---|
| Node.js | A current LTS version (e.g. Node 20 or 22). Nuxt 3 targets modern Node; check the Nuxt compatibility for the exact range. |
| Package manager | pnpm is the recommended package manager (used in Laioutr repos and playgrounds). npm or yarn can be used if the project and lockfile are set up for them. |
| Project configuration | A laioutrrc.json (or equivalent) at the project root. This file describes the project, installed apps, and their config. It is usually generated by Studio when you publish, or you can create or copy it for local development. |
After cloning or generating a frontend project, you typically run install, prepare (if the project has a prepare step for Nuxt and modules), and then dev or build. The exact scripts depend on the project template; see Getting started for your case.
The frontend is a Nuxt 3 application that layers Laioutr core packages and optional apps on top of the framework.
So at the bottom of the stack you have: Node.js → Nuxt 3 → Vue 3.
Every Laioutr frontend includes these core packages. They are the minimum needed for the frontend to behave as a Laioutr storefront:
| Package | Role |
|---|---|
| @laioutr-core/frontend-core | The base frontend Nuxt module. Required for every Laioutr frontend. It registers the app with Laioutr (via the kit), wires in Orchestr, and provides the runtime for pages, sections, blocks, consent store, tracking store, link resolver, media library API, and editor/reflect integration. It also pulls in shared dependencies (see below). |
| @laioutr-core/orchestr | The data layer (backend-for-frontend). Runs as part of the Nuxt server and exposes the Orchestr API: queries, links, actions, component resolvers, and caching. The frontend calls this API to get product, category, menu, and other data instead of talking to backends directly. |
| @laioutr-core/kit | Build-time and module wiring. Used by frontend-core and by apps to register sections, blocks, orchestr dirs, media library providers, Nuxt Image providers, and so on. Not a runtime dependency of the app code itself, but required so that the Nuxt build can discover and plug in apps correctly. |
| @laioutr-core/core-types | Shared types and tokens: page types, links, media, RC (runtime config), orchestr tokens, and other cross-cutting types. Used by frontend-core, orchestr, and apps so everyone agrees on shapes and contracts. |
So the core stack is: Nuxt 3 + Vue 3 + frontend-core + orchestr + kit + core-types. A minimal frontend project has these plus a laioutrrc and (usually) at least one app that provides sections, blocks, and Orchestr handlers.
The @laioutr-core/frontend-core module depends on (among others):
You don’t have to install these yourself for a standard Laioutr frontend; they come with frontend-core. If you build a custom app, your app can depend on frontend-core (or the kit) as a peer and rely on the same stack.
On top of the core stack, a project adds apps (Laioutr Nuxt modules) and optionally other Nuxt modules:
The exact list of apps is defined in the project’s laioutrrc.json and in the Nuxt config (e.g. modules: ['@laioutr-core/frontend-core', '@laioutr-app/shopify', ...]). So the full stack is: Node → Nuxt 3 → Vue 3 → Laioutr core → apps (and any extra Nuxt modules).
| Layer | What it is |
|---|---|
| Runtime | Node.js (LTS), pnpm (or npm/yarn). |
| Framework | Nuxt 3, Vue 3. |
| Laioutr core | frontend-core (required), orchestr, kit, core-types. |
| Frontend-core deps | Nuxt Image, i18n, Pinia, VueUse, and other utilities. |
| Optional | Apps (Shopify, Shopware, PWA, GTM, …), UI packages, other Nuxt modules. |
| Config | laioutrrc.json (and nuxt.config / app config). |
Together, this is what you need to run the frontend and what the frontend is built from. For setting up a project and running it locally, see Getting started.
Key Concepts
The main ideas behind the Laioutr frontend including Nuxt app, Studio-driven content, Orchestr data layer, apps and features, and how they fit together.
Introduction
What ships with the Laioutr frontend. Capabilities and building blocks that come with the platform — from PWA and consent management to tracking and how to use or extend them.