Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.sdk.fdo.alexvwan.me/llms.txt

Use this file to discover all available pages before exploring further.

Basics

The One Rule That Matters Most

Do not mix backend runtime and iframe UI runtime. Backend runtime is for:
  • init()
  • handlers
  • stores
  • logging
  • diagnostics
  • privileged action setup
Iframe UI runtime is for:
  • DOM access
  • browser event handling
  • window.createBackendReq(...)
  • host-injected UI libraries

What render() Really Returns

render() returns UI source for the FDO iframe pipeline. It is not:
  • arbitrary host DOM HTML injection
  • direct React component source you control in the host app
The safest mental model is:
  • JSX-compatible UI source for a sandboxed iframe render pipeline

DOM Helper Rule

If you use SDK DOM helpers and expect styling to work, wrap the final output with renderHTML(...). Without that, helper-generated classes may exist but their CSS will not be emitted.

Safe Authoring Rules

  • prefer JSX-safe tags like <br />
  • avoid raw <style> blocks in render()
  • escape literal braces in code samples
  • do not pass untrusted raw strings into generic DOM helper children
  • use DOMText helpers for user-provided text

Metadata Rule

metadata.icon must be a valid BlueprintJS v6 icon name.

Storage Rule

Do not call PluginRegistry.useStore(...) in class field initializers. Acquire stores lazily or inside init() / handlers.