Choose how to publish
Pick the way approved RootSmith pages reach your website. Use the Next.js SDK, a static site deploy hook, a signed webhook, or MDX export.
RootSmith publishes pages on your own domain, at the path saved with each page. Choose one method per site in Sites → Publishing.
| Your site | Use | Live after publish |
|---|---|---|
| Next.js 15 or 16 App Router with a server | Next.js SDK | Seconds |
| Static export that reads RootSmith at build time | Static site deploy hook | After one site build |
| Any other stack with a server you control | Webhook | When your code saves the page |
| A Git-based site or manual publishing | MDX export | When you add the file and deploy |
Pick the SDK when you can. It's the only method where RootSmith can refresh your page, roll back a failed update, and redirect merged pages for you.
How the settings fit together
- Delivery endpoint: the SDK's route on your site, such as
/api/rootsmith. When it's set, RootSmith publishes only through the SDK. If the SDK isn't connected, publishing stops until you fix it. - Without an SDK connection: used only when the delivery endpoint is empty. Choose Static site deploy hook, Webhook, MDX export, or Don't publish.
- Approval mode: Approval required or Automatic.
- Default schedule: Publish now or Scheduled.
Confirming a page is live
RootSmith marks a page published when it finds that exact version on your
site. It loads https://<your domain><page path> and looks for an element
with data-rootsmith-content set to the page ID and
data-rootsmith-version set to the version. The SDK and MDX export add it
for you. A webhook receiver must render it, or you confirm the page by hand.
If the first check fails, RootSmith checks again every five minutes for 24 hours.
How RootSmith works
The core records in RootSmith, such as teams, sites, brand profiles, page types, questions, ideas, and content, and how a page moves from idea to published.
Next.js SDK
Install @rootsmithio/next in a Next.js App Router site so RootSmith pages render on your domain and refresh the moment you publish.