Skip to content

Repository files navigation

WebviewJS

CI npm License

WebviewJS is a typed JavaScript binding for building desktop applications with the webview provided by the operating system. It connects Node.js, Bun, or Deno to native windows through N-API and the tao and wry libraries.

This repository contains the published package, its documentation site, runnable examples, and the tooling used to develop them.

Documentation · npm package · Examples · Issues

WebviewJS preview

Repository

Workspace Purpose
packages/webview Published @webviewjs/webview native binding and CLI
packages/create-webview Official WebviewJS project scaffolder (create-webview)
apps/docs Documentation site at webview.js.org
apps/examples Runnable JavaScript examples

Development

Install Bun 1.4.2, Rust stable, and Node.js 24 or newer for package tests.

bun install
bun run build
bun run test
bun run lint
bun run format:check
bun run check

Working on the package

Build the native package and its TypeScript API with:

bun --filter @webviewjs/webview build

Working on the docs

Start the documentation site locally with:

bun --filter @webviewjs/docs dev

Examples

Build the package, then run an example with Bun:

bun --filter @webviewjs/webview build
bun apps/examples/simple.ts

Project structure

apps/
  docs/                 Documentation site
  examples/             Runnable examples
packages/
  webview/              @webviewjs/webview package
  create-webview/       Official WebviewJS project scaffolder

Contributing

Issues and pull requests are welcome. For bugs or feature requests, open an issue; before contributing code, review the repository guidance in AGENTS.md.

License

MIT. See LICENSE.

About

Robust cross-platform webview library for Node/Deno/Bun

Topics

Resources

Code of conduct

Stars

78 stars

Watchers

5 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages