Open source · iOS · iPadOS · macOS

Build native widgets. With JavaScript + JSX.

Create widgets with familiar JSX-style JavaScript. Write and preview in Web Studio, or let your favorite Agent help.

Use your own Agent and model. Try the browser preview without installing anything.

A little JSX. Your own widget.

main.jsx JavaScript + JSX
Loading example…
Live preview
Starting preview…

Runs in your browser.

JavaScriptCore runtimeNative SwiftUI renderingLive preview on MacCommunity gallery

Describe. Generate. Preview.

1. Install the Creator Skill

Copy scriptwidget-creator into Claude Code’s skills folder. Keep using your own Agent and model.

2. Ask for your widget

Use /scriptwidget-creator to generate native JavaScript + JSX with the right runtime APIs and package permissions.

3. See it immediately

The CLI opens Web Studio with the generated widget already loaded. Validate with native Mac previews and export a .swt for iPhone.

/scriptwidget-creator Create a reading habit widget
and show it in Web Studio.

From an idea to a native widget.

Write in JavaScript + JSX

Compose familiar declarative layouts and use versioned APIs for data, files, networking, storage, device state, and more.

Build in Studio

Edit with diagnostics, inspect runtime output, and preview multiple widget families without repeating an Xcode build loop.

Share real packages

Use versioned manifests, explicit permissions, host allowlists, and the community Gallery to distribute reusable widgets.

JSX in. Native WidgetKit out.

$render(
  <vstack frame="max" padding="16" background="#171923">
    <text font="caption" color="#a9b0c0">Today</text>
    <text font="largeTitle" color="#ffffff">Build something useful.</text>
  </vstack>
);

Build the widget platform with us.

Star the repository to follow releases, open an issue with a real workflow, or contribute a template to the verified Gallery.

ScriptWidget stars on GitHub