Release 1.0.0
22 Sep 2026 · pinned package [email protected]
First release from its own repository. Imported history-free from OpenVibe.Network/packages/openvibe-shared at Network commit f337eb6; every module is byte-identical to that commit except navbar.js, which only changed as listed below. Vendored copies in Media, Tools and Community carried a stale ov-icons.js (and Community a stale navbar test); canonical was correct everywhere — see docs/divergence-2026-09-22.md.
Changed
- navbar.js no longer ships every glyph. The 87 Font Awesome solid glyph paths moved to a new browser file,
nav-icons.js. navbar.js keeps the 13 glyphs it draws itself (account menu, admin link, wallet chip) plus the widths of the rest, and fetchesnav-icons.js?v=<content hash>once, after first paint, the first time a site's link, chip or menu row names another glyph — from the directory navbar.js was loaded from, elsehttps://openvibe.network/shared/. The slot is an empty<svg>of the glyph's exact size until the path arrives, so nothing moves; the finished DOM and pixels are identical to the Network copy (checked in headless Chrome). Ifnav-icons.jscannot load, those icons fall back to<i class="fa-solid …">(the behaviour before inline glyphs). A page that loadsnav-icons.jsbefore navbar.js gets every glyph synchronously. New option:iconsUrl. navbar.js: 151.8 KB raw / 39.0 KB brotli → 118.6 KB / 27.6 KB. scripts/build-nav-icons.pynow writesnav-icons.js;scripts/build-navbar-icons.jsregenerates navbar.js's block from it (--checkin the tests).
Added
files.js(require('openvibe-shared/files')): the list of browser files a site may serve at/shared/<file>, the package directory,isBrowserFile()andpath().exportsfor every module (openvibe-shared/navbar,/nav-icons,/theme-loader, … and/package.json); every subpath the Network copy exported still resolves to the same file.- Tests:
test/run.js, a navbar.js size budget (29 KB brotli) and icon availability test, browser-bundle hygiene (norequire()or Node globals in served files), package exports. scripts/size-report.js: raw and brotli (q11) size of every browser file.- CI on Node 22.22.1, including an install of a tag-style tarball into an empty project.
PagesThe menuThe navbarIconsThemes
Rules39 The account lives in the menu's You tab, not in a dropdown.38 The balances are one pill that shows one balance at a time.31 One navbar per page, owned by the shared Frame.