Skip to content

Releases: ByteTheDev/TSGPUI

TSGPUI v0.3.0

Choose a tag to compare

@ByteTheDev ByteTheDev released this 21 Oct 23:05

TSGPUI v0.3.0

  • Run host calls on worker threads and queue backend tasks, so the UI stays responsive.
  • Add native file access for the backend, with a notes example that uses it.
  • Add a token-checked browser preview endpoint for api.native.
  • Add build diagnostics, persisted state, data-fetch POST, and viewport units.
  • Split the GPUI view into focused modules.
  • Refresh the README, the native API docs, and the website, which now renders the architecture, syntax, and safety docs in place.

Known limitations

  • macOS bundles are unsigned and not notarized. Gatekeeper may require approval before first launch.
  • Table and semantic tags use basic native container layout; browser table layout and disclosure behavior are not implemented.
  • System tray support and multiple independent windows/apps are not included in this release.

See the repository documentation for renderer and platform limitations.

TSGPUI v0.3.0-beta.1 (pre-release)

Pre-release

Choose a tag to compare

@ByteTheDev ByteTheDev released this 21 Oct 01:22

Pre-release for testing. It is not for production use, and it may have bugs and breaking changes before 0.3.0.

Full change list: v0.2.0...v0.3.0-beta.1

Highlights

  • Native host API (api.native): file access confined to granted folders, process spawn from an allowlist (no shell), window control, desktop notifications, and local IPC between the app and other processes.
  • Host work runs in the background: calls run on worker threads so the window stays responsive. Backend tasks queue behind a waiting action and roll back cleanly if they fail.
  • Browser preview runs api.native through tsgpui preview, using a token-checked local endpoint.
  • examples/notes: a small app that saves, opens, deletes and lists notes through the native file API.
  • Development workflow: persisted state ("persist": true), a development overlay (F12 or Ctrl+Shift+I), and build diagnostics that keep the last good build running.
  • CSS and HTML: viewport units, z-index, and data-fetch POST with state-bound bodies.
  • Website and docs: new landing page, documentation section, and refreshed README.

Known gaps

  • The native window has not been run on macOS or Linux. CI builds the host on Windows and macOS only.
  • The WebView renderer does not provide api.native yet.
  • process.spawn waits for the child to exit, so long-running services need a separate process.start API.
  • Window minimize, maximize and restore work only in the native host, not in the browser preview.
  • IPC peers disconnect when the app reloads.
  • The landing page's status section is out of date.

Try the notes example

bun install
bun run gpui:host
node packages/cli/bin/tsgpui.mjs build --project examples/notes

TSGPUI v0.2.0

Choose a tag to compare

@ByteTheDev ByteTheDev released this 19 Oct 20:48

TSGPUI v0.2.0

  • Add native macOS .app packaging and CI builds for Intel and Apple Silicon.
  • Extend native HTML coverage with semantic and table tags.
  • Add per-edge solid border widths and styles.
  • Fix the workspace package name and refresh Bun/Cargo lockfiles.

Known limitations

  • macOS bundles are unsigned and not notarized. Gatekeeper may require approval before first launch.
  • Table and semantic tags use basic native container layout; browser table layout and disclosure behavior are not implemented.
  • System tray support and multiple independent windows/apps are not included in this release.

See the repository documentation for renderer and platform limitations.

TSGPUI v0.1.0

Choose a tag to compare

@ByteTheDev ByteTheDev released this 17 Oct 20:54

First public release of TSGPUI, an experimental, source-first prototype that compiles a supported subset of HTML and CSS into native GPUI elements and runs TypeScript backend actions in embedded QuickJS. No Chromium, no WebView.

Highlights

  • Native controls: buttons, text inputs, textareas, checkboxes, selects, and form submission with required and numeric validation
  • Live state via data-bind and {{interpolation}}, with data-repeat for lists
  • Keyboard shortcuts (data-shortcut), native confirm dialogs (data-confirm), and clipboard copy/paste
  • Native file open/read/save dialogs (1 MiB limit)
  • User-initiated HTTPS GETs (data-fetch) restricted to hosts listed in permissions.network
  • @media queries with min/max width and height in px
  • Reusable static components, embedded PNG/JPEG/GIF/WebP/BMP/SVG images
  • CLI packaging into a single executable, with tsgpui dev for fast reload
  • Landing page in website/

Testing

  • 15/15 JS compiler and CLI tests pass
  • Typecheck and example compilation pass
  • Native host builds with cargo check and cargo test (the Rust test suite currently has no tests)

Known limitations

  • The native Windows host has not been run end-to-end; GUI behavior is not yet verified
  • HTML/CSS is a documented subset; no position, animations, rich text, or accessibility tree yet
  • The packaged-executable overlay is not signed or tamper-proof, and has not been tested against real PE loaders

See docs/SUPPORTED_SYNTAX.md, docs/ARCHITECTURE.md, and docs/SAFETY.md.