> ## Documentation Index
> Fetch the complete documentation index at: https://docs.shoppex.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Bazaar

> A dark code storefront for shops that sell game keys, software licenses and services. Platform, region and delivery facts on every product, a catalog you can filter, and one accent color.

Bazaar is a free code storefront for shops with large catalogs of keys, licenses, accounts and services. It is a React and Vite project you own, like [ForkMe](https://docs.shoppex.io/storefront/forkme.md). Every card and every product page shows its facts first: platform, region, delivery and status. Every number comes from your shop's data.

## Set up your shop

Bazaar reads your catalog as it is. These settings decide what it can show.

### Platform and region

1. Create a parent category for each group, for example **Platforms** with the subcategories PC, PS5, Xbox and Switch, and **Regions** with Global, EU, UK and NA.
2. Put each product in one subcategory of each group.
3. On the **Design** tab (Catalog), enter the slug of each parent in `catalog.facetGroups.platform` and `catalog.facetGroups.region`.

If you leave a group empty, Bazaar shows no platform or region for it. Bazaar never takes a platform or a region from a product title. The text of a region subcategory's description is the help text on its product pages.

### Product facts

Add these keys to a product's metadata to show a fact row. A row without its key is not shown.

| Key | Fact | Example |
| - | - | - |
| `fact.runs_on` | Runs on | `Windows 10 and 11` |
| `fact.devices` | Devices | `1 PC` |
| `fact.system` | System (comma separated) | `Windows, macOS` |
| `fact.method` | Method | `Piloted` |
| `fact.needs` | What we need from the buyer | `Account email` |
| `fact.never_asks` | What you never ask for | `Your password` |
| `rule.refund` | The refund rule under Buy now | `Full refund while the key is unrevealed` |

Any key can have a short second line in `<key>.note`, for example `fact.runs_on.note`.

### Unit labels

The delivery word on a card is the product's unit label when you set one ("Account", "Gift card", "Top-up"). Without one, Bazaar uses the delivery type: Key, File, Service or Shipped.

## What you change

* **The accent color.** It colors buttons, links and highlights. On the **Design** tab, three looks set it in one click: Cobalt (the shipped blue), Violet and Orchid. Ground, surfaces and text are fixed, and Bazaar is dark only.
* **The hero.** Set `home.hero.product` to a product's slug to show that product with your headline. Leave it empty for a large type headline.
* **Promises, shelf and chips.** Up to four promise lines under the hero (`home.trust`), the price for the "Under" shelf tab and chip (`catalog.priceChip`), and the filters shown as chips above the catalog (`catalog.chips`).

## Get started

Open **Store → Storefronts**, choose **New Storefront**, and create a storefront from **Bazaar** under **Code**. Then set up your category groups and the **Design** tab as above, and publish. To change the code, pull it with the [Theme CLI](https://docs.shoppex.io/agents/cli-themes.md), like [ForkMe](https://docs.shoppex.io/storefront/forkme.md#get-the-template). Read `AGENTS.md` and `README.md` at the project root first.

> [!NOTE]
>
> Bazaar has no Instant Buy. Code storefronts cannot spend a buyer's balance, so buyers check out from the cart.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.