Skip to Content
SDKOverview

MarkUp SDK

The MarkUp SDK lets you embed MarkUp’s commenting and collaboration experience directly inside your own web application. Your users drop pinned comments on your live pages, reply in threads, resolve feedback, and attach files — all without leaving your product, and all attributed to the right person.

The SDK renders its own toolbar and comment pins in an isolated shadow DOM, so it layers on top of your UI without clashing with your styles.


The developer journey

Integrating the SDK is four steps:

  1. Create an SDK installation in the MarkUp web app to get a publicKey and a linked markupId. See Create an SDK installation.
  2. Install the package from the Ceros npm registry.
  3. Initialize the SDK with your publicKey and markupId.
  4. Render the toolbar and let the SDK resolve a user session.

The Getting started guide walks through all four end to end.


Packages

MarkUp ships two SDK packages. Most integrations only need the first.

PackageUse it for
@ceros/markup-sdkThe browser SDK. Initializes a session, renders the commenting UI, and exposes typed access to projects, threads, comments, and uploads. This is what most integrations install.
@ceros/markup-sdk-coreThe headless transport layer the browser SDK is built on — a typed ApiClient with no UI. Use it for server-side scripts or when you render your own UI. See Headless client.

@ceros/markup-sdk depends on @ceros/markup-sdk-core, so installing the browser SDK pulls in the core client and re-exports its types.

Two entry points

@ceros/markup-sdk exposes two subpaths so you only ship the bundle weight you need:

ImportWhat you get
@ceros/markup-sdk/uiThe full experience: toolbar, comment pins, thread popover, commenting mode. Bundles Preact and the prebuilt components. The guides here target this entry.
@ceros/markup-sdkAPI only: services, auth, and events. No Preact, no UI. Use this when you build your own UI and just need typed access to the MarkUp API. render() is unavailable on this entry; everything else is identical.

Availability

The SDK is published to the Ceros private npm registry (GitHub Packages) and is currently in an internal 1.0.0-beta.x phase. The public API is still unstable — breaking changes are allowed between releases — so pin an exact version and review release notes before upgrading. Don’t build external, unsupported integrations against it until it flips to a public release.

Installing from the private registry requires an .npmrc that points the @ceros scope at GitHub Packages; the Getting started guide covers the setup.


Next steps