OpenSky-commerce / Documentation

Product Management

Products are the core of your store. Open Sky Commerce supports simple products, products with custom variants (size, color, etc.), additional information sections, and custom attributes.

Creating a Product

  1. Go to Admin → Products → Add Product.
  2. Enter the product name, slug, description, and price.
  3. Upload one or more images. Images are uploaded to DigitalOcean Spaces automatically.
  4. Assign the product to one or more categories.
  5. Set stock quantity and SKU if applicable.
  6. Save the product.

Product Variants

Variants allow a single product to have multiple options (e.g., Small / Medium / Large, or Red / Blue). Each variant can have its own price, stock quantity, and image.

  1. Open the product in the admin panel.
  2. Navigate to the Variants tab.
  3. Add variant options (e.g., Size: S, M, L).
  4. Set price and stock per variant.

Custom Attributes

Custom attributes allow you to add structured data to products beyond the default fields (e.g., material, weight, dimensions). They are displayed in the Additional Information tab on the product page.

Product Images

Upload images directly in the product form. Images are stored in DigitalOcean Spaces and served via CDN. Recommended image dimensions are 800×800px at a minimum for sharp display on retina screens.

SEO Fields

Each product has a slug field which forms its URL:

https://yourstore.com/products/[slug]

Choose slugs that are descriptive and URL-safe (lowercase, hyphens, no spaces). The slug cannot be changed after orders have been placed against the product, as reviews and order history reference it.

Featured & Popular Products

Mark products as featured to surface them in homepage sections. Products can also be tagged for the /popular listing page, which is sorted by view count or sales depending on your configuration.

Importing Products

For bulk imports during initial setup, the demo data script reads from seed-data/Product.json and seed-data/ProductVariant.json. You can modify these JSON files to import your own products:

npm run import-demo-data