Sanity CMS — marketing layer over NetSuite products (9 brands)

Work at Orlando Foods. Internal details and brand names anonymized where appropriate.

TL;DR

I built a Sanity CMS workspace that sits on top of NetSuite as the source of truth for products. It adds a marketing content layer where our team can prepare content across 9 brands — from social media to websites — with custom spec sheet generators, structured views for gap analysis, and a product dashboard.

Context

What I built

Marketing content layer

A structured content model in Sanity where each product from NetSuite gets a marketing overlay: descriptions, images, social copy, website content, and brand-specific fields. The NetSuite product data stays canonical — the CMS only adds what marketing needs.

Custom spec sheet generators

Built custom generators inside Sanity that produce formatted product spec sheets directly from the structured data. What used to take manual assembly now takes a few clicks — consistent formatting, correct data, ready to export.

Product views and gap analysis

Multiple views that let the team filter and group products by brand, category, completeness, and status. Incomplete fields are immediately visible — no need to open each product to find what’s missing. This makes content audits fast and prioritization obvious.

Product dashboard

A dashboard that shows product counts — total, by category, by brand, by completeness — so the team can see the state of the catalog at a glance without running reports.

What it solved