Skip to content
hudsonkitPublic

About

Opinionated app shell for multi-app workspaces — chrome once, apps plug in. React 19 web SDK (hudsonkit on npm) + Apple-native Swift package.

Topics

Resources

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

HudsonKit — app shells, canvases, and tools. Build the interesting part.

hudsonkit npm version @hudsonkit/ai npm version License: Apache-2.0

Build your app. HudsonKit supplies the workspace around it.

Navigation, side panels, command palettes, status bars, draggable windows, and an infinite canvas. Compose them into a single-app shell or a workspace where several apps share the same chrome. Your app owns its state and content; the shell handles the surrounding interface.

Explore HudsonKit · Try the workspace · Quickstart · API reference

Built with HudsonKit

ARC’s live diagram editor: connected architecture nodes on a canvas, with an inspector, drawing tools, and status bar.

ARC is a diagram editor built on HudsonKit’s AppShell. ARC supplies the diagram model, drawing tools, and inspector content; Hudson supplies the shell that holds them together. The screenshot shows the running editor with its built-in example diagram.

Try ARC → · Read the source →

A Studio study in the hosted demo: the Talkie “One thought” narrative, framed by Studio’s sidebar of foundations, proposals, and studies.

Studio is a design studio that lives in your repo. Studies are React components and docs are Markdown, kept beside the code they describe. Studio supplies the page registry, doc and code viewers, and agent feedback; Hudson supplies the shell with its sidebar, page strip, and status bar. The screenshot shows Studio’s own studio, which is also the hosted demo.

Try Studio → · Read the source →

Start building

bun add hudsonkit

Import the prebuilt styles once in your app entry point:

import 'hudsonkit/styles';

A plain React component can become a Hudson app:

'use client';

import { AppShell, createEmbedApp } from 'hudsonkit/app-shell';

const { app } = createEmbedApp({
  id: 'hello',
  title: 'My first app',
  component: () => <div style={{ padding: 24 }}>Hello, Hudson.</div>,
});

export default function Page() {
  return <AppShell app={app} />;
}

For an app with its own state, panels, and commands, implement HudsonApp: a Provider owns state, slots supply content, and hooks connect commands, search, and status to the shell. Follow the quickstart or the building apps guide.

The web SDK targets React 19. Install a published package or a sealed tarball when consuming it outside this repository. See the consumer setup rules for Next.js and Tailwind configuration.

Choose your surface

Surface Use it for
AppShell One app with navigation, panels, commands, and status.
WorkspaceShell Multiple apps in a shared canvas or panel workspace.
Canvas and windows Pan, zoom, drag, resize, and persist window positions.
Optional AI backends Provider-neutral AI integration through @hudsonkit/ai.
Apple-native SDKs Swift packages for macOS shells, iOS shells, and Hudson Canvas.

This repository includes the SDKs, the web workspace, developer tools, and Canvas, a native macOS app for terminals and workspace artifacts.

Work on Hudson

git clone https://github.com/arach/hudson.git
cd hudson
bun install
bun dev

Open localhost:3500 for the web workspace. For the native Canvas app, see Hudson Canvas.

Path Contents
packages/web/hudsonkit/ Web SDK, shell, and UI primitives
packages/web/ai-backends/ Optional AI backends
packages/web/admin/ Schema-driven admin surfaces
packages/native/apple/HudsonKit/ Apple-native Swift package
packages/tools/ Scaffolding and diagnostics tools
apps/web/ Web workspace, example apps, and website
apps/canvas/ Native macOS Canvas app
docs/ Guides and reference material

Documentation

HudsonKit is still 0.x. Review the web SDK changelog when upgrading; APIs may change between releases.

License

The source in this repository is licensed under Apache 2.0. See NOTICE for third-party notices and separately licensed assets. Previously published package versions retain the license included with those releases.

About

Opinionated app shell for multi-app workspaces — chrome once, apps plug in. React 19 web SDK (hudsonkit on npm) + Apple-native Swift package.

Topics

Resources

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages