Skip to main content

Entry points

One package name over ten documented subpaths. Which one you import from tells a reader what layer you are working in.

Entry pointWhat lives there
@modular/sdkthe authoring vocabulary and the runtime context contract
@modular/sdk/viewReact entry for contributed views
@modular/sdk/chatchat tool-call rendering
@modular/sdk/statemod-owned state and its snapshots
@modular/sdk/editordocument, blocks, text streams
@modular/sdk/canvascanvas elements and templates
@modular/sdk/authoringauthoring-time lint and diagnostics
@modular/sdk/mod-uimod-UI surface descriptions
@modular/sdk/themetheme authoring
@modular/sdk/cssstyling helpers
@modular/sdk/uithe host's live React components, icons, and UI hooks; see Components

Three internal subpaths with no reference pages

@modular/sdk/internal, @modular/sdk/eslint-plugin, and @modular/sdk/ambient-surface are reachable through the exports map but are not author API.

  • /internal, /eslint-plugin, and /ambient-surface are host machinery. They are published because the build needs them, not because they are author API. See Conventions.

The live-instance subpaths

@modular/sdk/ui, @modular/sdk/css, @modular/sdk/state, and @modular/sdk/theme are shared live instances — the host provides the running copy. Bundling your own breaks identity, which for React means broken hooks and context.