Documentation

Architecture & stack

How ShopZero is built: backend, admin, storefronts, and infrastructure. For developers and technical decision-makers.

Overview

Three layers: a single engine API, an admin dashboard, and one or more storefronts.

Storefronts (web, mobile, or custom) talk to the ShopZero Engine API. The admin dashboard manages stores, team roles, theme, payments, and delivery. All storefronts and the admin use the same API.

The engine runs on a high-performance backend with a relational database, object storage, and caching. Storefronts are deployed separately so you can update them without touching the core.

Core backend

API, business logic, and data layer.

  • Runtime — Go. Chosen for speed, concurrency, and small binaries.
  • API — REST (OpenAPI). Handles auth, cart, checkout, products, orders, inventory, and webhooks.
  • Data layer — Database, object storage, and caching are managed by the engine; we don’t disclose specific products.

Admin dashboard

Store management, team, and sensitive settings.

  • Stack — Vue, TypeScript. Same design system as the rest of the product.
  • Store switcher — Multi-tenant: switch between stores from one dashboard.
  • Roles — super_admin, store_manager, store_viewer. Permissions control access to theme, payment, delivery, and integrations.
  • Hosting — Served by the same backend or a dedicated static/CDN setup depending on deployment.

Storefronts

Customer-facing sites and apps.

  • Default stack — Nuxt (SSR), Vue. Included with ShopZero; you can customize or replace it.
  • Deploy targets — Edge-friendly: Vercel, Netlify, Cloudflare Pages, or your own Node host. Deploy updates without touching the engine.
  • API usage — Storefronts call the Engine API for products, cart, checkout, and auth. No direct database access.

Full storefront feature list: Storefront documentation.

Stack at a glance

Backend and storefront.

Go
Nuxt