gjsify’s progress is tracked in STATUS.md and regenerated into these dashboards on every build, so the bars never lag behind reality.
Project Coverage
118 of 121 pillar entries implemented
Every category in STATUS.md's summary table, rendered as a live progress bar. The data file is regenerated from STATUS.md on every build, so the bars never lag behind reality.
98% 111 full 7 partial 3 stub
38 / 41 (93%) 18 / 18 (100%) 3 / 3 (100%) 2 / 2 (100%) 6 / 6 (100%) 2 / 2 (100%) 3 / 3 (100%) 16 / 16 (100%) 8 / 8 (100%) 22 / 22 (100%)
Node.js API Coverage
38 of 41 Node.js modules
User-facing Node modules backed by GLib, Gio, Soup, and native Vala bridges. 3 deprecated or browser-irrelevant modules ship as stubs so dependency checks resolve.
93% 33 full 5 partial 3 stub
4 / 4 Full Full Full Full 8 / 8 Full Full Full Server + ClientRequest + Agent Full Full h2 via ALPN; pushStream/respondWithFD/respondWithFile via @gjsify/http2-native (libnghttp2) Full Full npm ws drop-in; Autobahn 510 OK / 0 FAIL Partial 4 / 4 Full Full Full Full 1 / 1 Full 3 / 4 Full Cross-process IPC, file-based workers Partial Full Stub 6 / 6 Full Full Full Full Full Full 9 / 11 Full Full Full Full Full Full GLib-source-safe (GLib.timeout_add) Full Full Deprecated alias for util Full Stub Deprecated by Node Stub 1 / 1 Partial 2 / 2 runInThisContext via eval; no realm isolation Partial Wire-format v15 serialize/deserialize; no heap snapshot or CPU profile Partial
Web Platform Coverage
34 of 59 web standards
Coverage of relevant W3C and WHATWG standards, including 10 APIs that are explicitly out of scope for desktop GTK apps (Service Worker, FS Access, Web Bluetooth, …).
58% 32 full 2 partial 15 planned 10 out of scope
5 / 5 Full Full Full Full Full 1 / 5 localStorage + sessionStorage Full libgda could back Planned Planned Service Worker companion Out of scope Browser sandbox; GTK uses Gio.File directly Out of scope 5 / 5 Full Full Full Full Full 1 / 1 Full 4 / 5 Full Full Full Full scheduler.postTask — GLib idle could back Planned 2 / 4 file-based; no DOM-Worker shim Partial Full Browser multi-tab concept Out of scope HTTP cache proxy — irrelevant for GTK apps Out of scope 4 / 7 Phase 1: AudioContext + Source + Gain Partial Full Full Full GStreamer encodebin could back Planned no GNOME backend yet — multi-year effort Planned Native apps use ALSA/JACK directly Out of scope 4 / 8 Full Full Full Full Needed for Adwaita component composition Planned Planned Browser render-pipeline specific Out of scope Planned 2 / 5 Full Full Gdk.Seat.grab could back Planned GTK apps use BlueZ directly Out of scope Native apps use libusb/udev directly Out of scope 3 / 5 Full Full Full Trivial via Blob+streams Planned GTK uses Gio.File directly Out of scope 3 / 3 Full Full Full 0 / 3 Gio.Notification candidate Planned GeoClue2 + consent dialog Planned Planned 0 / 3 GLib.Mutex async wrapper Planned Planned Service Worker tier Out of scope
Parsing
acorn minify-xml gettext-parser
Build tooling
deepkit-type-compiler rolldown-native GJS rollup-pluginutils lightningcss ts-for-gir
Filesystem
fast-glob pkg-types cosmiconfig
Process & CLI
execa yargs
Networking
axios socket.io autobahn mcp-typescript-sdk mcp-inspector-cli
Streams & workers
streamx worker-stress