Related documentation
Products
A Roe site is mostly Markdown and YAML files. There are 4 sources of content in Roe: Pages, Posts, Products (if you’ve enabled the Store) and Documentation.
Your Product files are in the /site/products folder in your Roe folder (where you’ve installed Roe).
Products in Roe
Products are items you sell through your site using the Store feature. Each product is a Markdown file with metadata for price, SKU, images, and more.
Products work with Snipcart to handle the shopping cart, checkout, and payment processing.
Enabling the Store
Before creating products:
- Go to Admin → Settings
- Click Enable Store
- Configure your store settings (currency, categories)
- Add your Snipcart API keys
- See Store for full setup instructions
Creating Products
Create products in Admin → Products or add .md files to /site/products.
Required Metadata
---
title: The First Book
status: published
sku: BOOK-001-MYFIRSTBOOK
price: 10.00
category: book
image: /media/images/my-first-book.jpg
---
Product Metadata Fields
| Field | Required | Description |
|---|---|---|
title |
Yes | Product name |
sku |
Yes | Unique identifier for checkout |
price |
Yes | Price as a number (e.g., 10.00) |
category |
Yes | Product category for filtering |
image |
Yes | Product image path |
status |
Yes |
draft or published
|
url_name |
No | Custom URL slug |
tags |
No | Tags for organization |
description |
No | Short description shown in product grids |
group |
No | Groups variants together (see below) |
variant |
No | Label for this variant (e.g., “Paperback”) |
primary |
No | Set true to show this variant first in collections |
Product Variants (groups)
This allows you to sell different versions of the same thing, e.g. same t-shirt, different colors or same book title but different formats (ebook, paperback). You can edit the settings for product groups here: [Settings → Features → store.yml][/admin/configs/store/edit].
- Create a product for each variant
- Give them all the same
groupvalue - Set
primary: trueon the variant you want to show first - Label each with
variant
---
title: My Book
sku: BOOK-001-PAPER
price: 15.00
category: book
group: my-book
variant: Paperback
primary: true
---
In collections with groups: enabled, Roe shows one entry per group and shows one price (lowest, highest or range). You can set this here: [Settings → Features → store.yml][/admin/configs/store/edit].
Displaying Products
Use Collections with source: products to display products:
collection
source: products
category: book
template: grid
heading: Books
Collection options for products:
| Option | Description |
|---|---|
category |
Filter by product category |
groups |
enabled to group variants together |
show_description |
Show product description in grid |
aspect_ratio |
Image aspect ratio: auto, portrait, square, landscape
|
SKUs
SKUs (Stock Keeping Units) are required for every product. They must be unique and never change once set. Roe includes a SKU generator that suggests standardized codes:
BOOK-001-MYFIRSTBOOK
Note: Changing a SKU after customers have purchased breaks the connection between your product and Snipcart’s records.
Product Pages
Each product file is a ‘page’. You can add content below the metadata (descriptions, sample chapters, reviews) using regular Markdown.
Use the PRODUCT button in The Editor to insert a template product page. This pulls from the metadata to give you a good starting point when building out product pages.
Store Page
There is no Store page be default. Since Roe is modular, you can build a Store page easily. Create a page called: Store, and add a product Collection to it.
See Store to learn about the Store feature in Roe.