▶ WebNux Kernel Family

THE KERNEL.
PLUG & PLAY.

WebNux Simple is a self-contained kernel. Drop in one script tag — it boots all subsystems, collects hardware info, then hands off to your OS via onReady(). No spinner. No fastboot. Text log tells you exactly what's starting.

✓ One script tag
✓ Text boot log
✓ Hardware inspector
✓ Zero dependencies
✓ Pure kernel — no built-in OS
✗ No fastboot
✗ No spinner
// All you write
<!-- in your OS's HTML -->
<script src="webnuxsimple-kernel.js"></script>
Kernel boots automatically. onReady() fires when all subsystems are up.
// Build your OS in onReady()
<script> WebOSKernel.onReady(kernel => { // register your OS services kernel.register('storage', myStorageService); kernel.register('display', myDisplayService); // read real hardware info const hw = kernel.hardware.snapshot; console.log(hw.cpu.logicalCores, hw.gpu.renderer, hw.memory.deviceRAM); // spawn a process const pid = kernel.process.spawn('my-os'); // use the syscall interface kernel.syscall.call('uptime').then(console.log); // query a permission kernel.permissions.query('camera').then(state => console.log(state)); // add a route your OS exposes kernel.router.get('/os/status', (req, res) => { res.body = { ok: true }; }); // mount your UI — the kernel is done, OS takes over document.body.innerHTML = `<div id="desktop">...</div>`; }); </script>
// 10 kernel subsystems
1 — EventBuson · once · off · emit · listeners

Pub/sub event bus. Returns an unsubscribe function from on(). Errors in listeners are caught and logged so one bad handler can't kill the bus.

2 — Router:param · query · all()

URL router with :param segment matching and query string parsing. Supports GET, POST, PUT, DELETE, and wildcard all().

3 — Middlewareasync (req, res, next)

Ordered async middleware pipeline. Runs before every route handler. Add with kernel.use(fn).

4 — Service Containerregister · resolve · has · list

Named service registry. Services expose version metadata. Overwriting a service emits a warning. Resolving a missing service throws WK_E005.

5 — Process Managerspawn · kill · get · list · running

Lightweight process registry. Each process gets a PID. The kernel itself runs as the first process at boot.

6 — Syscall Interfaceregister · call · list

OS-style syscall table. Built-in syscalls: getpid · spawn · kill · ps · uptime · services · hardware · handle · emit · perm.

7 — Permission Layerquery · queryAll

Wraps the browser Permissions API. Caches results and sets up live change listeners. Gracefully degrades on unsupported browsers.

8 — AppStoreregister · unregister · get · list

Local app registry keyed by app ID. Validates required metadata fields on registration. No external CDN.

9 — Hardware Inspectorcollect() · snapshot

Collects CPU cores & arch, RAM, JS heap, GPU vendor/renderer/GL version, battery, network type & downlink, storage quota, display info, and codec support — all via browser APIs. Available as kernel.hardware.snapshot.

10 — Plugin Systemkernel.plugin({ name, install })

Plugins receive the full kernel object and can register services, routes, and middleware. Boot log prints load status for each.

// Built-in kernel routes (dispatch via kernel.handle)
GET/kernel/infoKernel name, version, uptime, PID
GET/kernel/servicesAll registered services + metadata
GET/kernel/appsAll registered apps
GET/kernel/routesAll registered routes
GET/kernel/processesRunning process list + count
GET/kernel/syscallsList of registered syscalls
GET/kernel/logFull boot log
GET/kernel/permissionsAll queried browser permissions
GET/kernel/hardwareFull hardware snapshot
GET/kernel/hardware/cpuCPU cores, arch, platform
GET/kernel/hardware/gpuGPU vendor, renderer, GL version, max texture
GET/kernel/hardware/memoryDevice RAM, JS heap used/limit
GET/kernel/hardware/batteryLevel, charging state, time remaining
GET/kernel/hardware/networkType, effective type, downlink, RTT
GET/kernel/hardware/displayResolution, DPR, color depth, orientation
GET/kernel/hardware/storageStorage quota and usage estimate
GET/kernel/hardware/codecsVideo & audio codec support matrix
GET/kernel/hardware/browserBrowser name, version, language, UA
// WebNux Simple vs standard WebNux

✓ Simple has

Text boot log — every subsystem line-by-line as it starts
Hardware inspector — CPU, GPU, RAM, battery, network, storage, codecs, display
Process manager — PIDs, spawn, kill, list
Syscall interface — register & call OS-style syscalls
Zero dependencies — fully self-contained, works offline

✗ Simple lacks

Fastboot mode — no shortcut boot path
Loading spinner — text only, no animated circle
Firebase / cloud — no Firestore, no cloud app loading
Global app store — local registry only, no cross-OS sharing

Need fastboot, the spinner, Firebase, or the global app registry? Those are in the full standard WebNux kernel.

FULL WEBNUX →