npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@swifttui/build

v0.1.6

Published

**Build tooling for [SwiftTUI](https://swifttui.sh) browser deployments — compile a SwiftTUI app to `wasm32-wasi` and capture its scene manifest.**

Readme

@swifttui/build

Build tooling for SwiftTUI browser deployments — compile a SwiftTUI app to wasm32-wasi and capture its scene manifest.

npm License

@swifttui/build turns a SwiftTUI app into the two artifacts the browser needs: an app.wasm and a scene-manifest.json. It drives the Swift toolchain, runs a browser WebAssembly.compile validation pass, and packages the result. It intentionally sits outside @swifttui/web (the browser runtime) so runtime imports never pull in Swift process spawning, Node filesystem APIs, or wasm packaging helpers.

Installation

Published to npm as an ESM package with a Node CLI and bundled TypeScript declarations:

npm install --save-dev @swifttui/build

This exposes the swifttui-web CLI (npx swifttui-web build --app <Exe>) and a programmatic ESM API. The package ships compiled dist/ JavaScript — the bin runs on plain Node (#!/usr/bin/env node), no Bun or TypeScript toolchain required to consume it. Building a SwiftTUI app to wasm does require a Swift 6.3.x toolchain and the swift-6.3.1-RELEASE_wasm SDK on your machine.

Use

From the command line:

npx swifttui-web build --app <AppExecutable>

Or programmatically:

import { buildSwiftTUIWebApp } from "@swifttui/build";

await buildSwiftTUIWebApp({
  packagePath: ".",
  product: "MyApp",
  outputDirectory: "dist",
});

Toolchain defaults match the repo:

  • Swift command: swiftly run swift when swiftly is on PATH, otherwise swift
  • SDK: swift-6.3.1-RELEASE_wasm
  • Release Swift flags: -Xswiftc -Osize -Xswiftc -Xfrontend -Xswiftc -disable-llvm-merge-functions-pass
  • Initial memory: 536870912
  • Max memory: 4294967296
  • Stack size: 1048576

Callers can override swiftCommand, swiftSDK, configuration, initialMemory, maxMemory, stackSize, extraSwiftcFlags, extraLinkerFlags, and extraSwiftBuildArgs.

The WASI release flags (-Osize plus -disable-llvm-merge-functions-pass) keep the output under the browser WebAssembly API's 1000-parameter limit. The canonical command lives in this package — prefer the CLI/API over a hand-rolled swift build.

Developing this package

Only needed if you are working on @swifttui/build itself. Consuming it from a project needs only npm install --save-dev (above).

Use Bun for the CLI, bundling, and tests, and swiftly Swift 6.3.1 for the wasm build it invokes (not bare swift).

  • bun test
  • bun run build — compile the publishable package to dist/ with tsdown (ESM .js + .d.ts, plus the swifttui-web bin). Run automatically on publish via prepublishOnly.
  • bun run build:manifest -- --app <AppExecutable>
  • bun run build:wasm -- --app <AppExecutable>

The full app pipeline (manifest + wasm) is exposed through the CLI:

bun run cli.ts build --app <AppExecutable>    # from source
npx swifttui-web build --app <AppExecutable>  # from the published bin

License

MIT — see LICENSE.