v0.5.0-rc.0
First release candidate for the 0.5.0 minor. This is an opt-in prerelease published to npm next; latest remains on the stable release.
npm install vgpu@next
All seven public packages are versioned together at 0.5.0-rc.0.
- Explicit, unified texture creation:
kind, spatialsize, arraylayers, and nonemptyusage, with immutable creation metadata. - Texture readback supports explicit mip selection, mip-relative regions, and every selected layer or slice, with early allocation and usage validation.
- Safer texture replacement and resource lifetime handling, including stale bundle detection and separate compute/draw cache ownership.
- Linux Node rendering defaults to Vulkan, avoiding Dawn's restricted-mip-view/storage-write defect on OpenGL. macOS, Windows, and browser defaults are unchanged.
- Atmosphere & Clouds example with temporally accumulated haze, filtered near cloud shadows, and smoothed scene controls.
This pre-1.0 minor includes breaking API changes: Texture.resize() and Target/Surface read delegates are removed. Replace texture allocations explicitly, and read from a selected attachment with texture.read({ mipLevel: 0, region: "all" }) or readFloats(options).
See the texture API migration guide for before/after examples.
Linux installations need a usable Vulkan driver or an installed portable CPU renderer (npx vgpu install-software-renderer). Auto mode does not silently fall back to OpenGL or download drivers. Explicit OpenGL overrides remain available with the documented upstream limitation.
Please validate texture creation/replacement, cropped and layered readback, and Linux rendering in your applications before stable promotion.
v0.4.1
- Use canary as the prerelease channel by @matiasngf in https://github.com/vercel-labs/vgpu/pull/408
- Harden canary releases and production authorization by @matiasngf in https://github.com/vercel-labs/vgpu/pull/410
- docs: clarify npm trusted publisher action by @matiasngf in https://github.com/vercel-labs/vgpu/pull/412
- docs: add "TypeGPU Liquid Glass" example by @matiasngf in https://github.com/vercel-labs/vgpu/pull/418
- chore(release): prepare v0.4.1 by @matiasngf in https://github.com/vercel-labs/vgpu/pull/419
Full Changelog: https://github.com/vercel-labs/vgpu/compare/v0.4.0...v0.4.1
v0.4.0
- Simplify GPU examples and remove post-processing by @matiasngf in https://github.com/vercel-labs/vgpu/pull/364
- Build responsive prism homepage by @matiasngf in https://github.com/vercel-labs/vgpu/pull/356
- Polish prism hero reveal and social preview by @matiasngf in https://github.com/vercel-labs/vgpu/pull/370
- perf: prioritize prism hero loading by @matiasngf in https://github.com/vercel-labs/vgpu/pull/371
- perf: accelerate hero GPU initialization by @matiasngf in https://github.com/vercel-labs/vgpu/pull/372
- fix(docs): contain MCP hero command by @matiasngf in https://github.com/vercel-labs/vgpu/pull/373
- docs: improve documentation onboarding by @matiasngf in https://github.com/vercel-labs/vgpu/pull/374
- fix(docs): resolve API reference package 404s by @matiasngf in https://github.com/vercel-labs/vgpu/pull/378
- Add first-class WGSL modules documentation by @matiasngf in https://github.com/vercel-labs/vgpu/pull/375
- Add three-tsl example: WGSL modules as three.js TSL nodes by @matiasngf in https://github.com/vercel-labs/vgpu/pull/386
- Publish three-tsl in the docs gallery, defaulting to the sphere with a lil-gui mesh picker by @matiasngf in https://github.com/vercel-labs/vgpu/pull/388
- three-tsl: bake the lava fields into texture volumes, keep the sharp voronoi live (~7.7x faster) by @matiasngf in https://github.com/vercel-labs/vgpu/pull/389
- perf(examples): bake three-tsl micro detail by @matiasngf in https://github.com/vercel-labs/vgpu/pull/391
- Add Markdown and source routes for examples by @matiasngf in https://github.com/vercel-labs/vgpu/pull/392
- feat(docs): add quality tiers to the vgpu hero by @matiasngf in https://github.com/vercel-labs/vgpu/pull/390
- Add source actions to example pages by @matiasngf in https://github.com/vercel-labs/vgpu/pull/393
- Fix v0 experiment imports and WGSL setup by @matiasngf in https://github.com/vercel-labs/vgpu/pull/394
- Make exported experiment asset URLs portable by @matiasngf in https://github.com/vercel-labs/vgpu/pull/395
- Generate examples API artifacts at build time by @matiasngf in https://github.com/vercel-labs/vgpu/pull/396
- fix(wgsl): resolve tmpdir symlink before comparing webpack fileDependencies on macOS by @ColinL-code in https://github.com/vercel-labs/vgpu/pull/382
- feat(docs): add Particle Orbit vgpu + TypeGPU example by @matiasngf in https://github.com/vercel-labs/vgpu/pull/400
- feat(docs): add adaptive quality example and guide by @matiasngf in https://github.com/vercel-labs/vgpu/pull/401
- docs: add shipping-to-production pre-PR checklist guide by @matiasngf in https://github.com/vercel-labs/vgpu/pull/402
- feat: add Three TSL adapter by @matiasngf in https://github.com/vercel-labs/vgpu/pull/397
- feat(frame): make frame(gpu, cb) atomic — submit on return, cancel on throw by @matiasngf in https://github.com/vercel-labs/vgpu/pull/404
- chore(release): prepare v0.4.0-rc.0 by @matiasngf in https://github.com/vercel-labs/vgpu/pull/406
- chore(release): prepare v0.4.0 by @matiasngf in https://github.com/vercel-labs/vgpu/pull/407
- @ColinL-code made their first contribution in https://github.com/vercel-labs/vgpu/pull/382
Full Changelog: https://github.com/vercel-labs/vgpu/compare/v0.3.1...v0.4.0
v0.4.0-rc.0
Release candidate 0 for the 0.4.0 minor line. Adds the vgpu/three adapter for using resolved WGSL function exports from Three.js TSL, exposes WGSL function-export metadata and validation helpers, and makes callback-based frames atomic by cancelling unsubmitted work when callbacks throw.
Publishes all fixed-group packages to the npm next dist-tag for testing before the stable release.
v0.3.1
Stable 0.3.1 release. Adds the local STDIO and hosted HTTP MCP servers for VGPU docs and verified examples, improves online examples portability on macOS and Windows, and keeps failed WGSL imports watched for recovery. Promotes the tested 0.3.1-rc.0 line and publishes all fixed-group packages to the latest dist-tag.
v0.3.1-rc.0
Release candidate 0 for the 0.3.1 patch line. Adds the local STDIO and hosted HTTP MCP servers for VGPU docs and verified examples, improves online examples portability on macOS and Windows, and keeps failed WGSL imports watched for recovery. Publishes all fixed-group packages to the next dist-tag.
v0.3.0
First lockstep release: all published packages now version together (0.3.0 across the board). Highlights: honest tri-state shader validation (validate: off/auto/require — note: bundler loaders never validate WGSL; the validation gate is npx vgpu check --require-validation), plain-data EntryPointInfo reflection with the new reflectSource reference page, non-ASCII identifier rejection with clear diagnostics, WGSL compiler fixes (module-scope shadowing, leading-dot float literals, comparison-operator scope activation, post-minify validation), @vgpu/wgsl/runtime reachable from CommonJS, adapter-node software-renderer notice, examples handshake error-code ordering, and vgpu docs find ranking. Cycle: rc.0 → 2 independent dogfoods → rc.1 (3 fixes) → verified promotion.
v0.3.0-rc.1
Release candidate 1. Adds on top of rc.0: silence webpack build-dependency warnings from the validation device loader (literal specifier, #314), @vgpu/wgsl/runtime reachable from CJS documented (#312), reflectSource/Reflection/EntryPointInfo reference page + explicit loader-validation semantics (#313). Publishes to dist-tag next.
v0.3.0-rc.0
Release candidate 0. Lockstep 0.3.0 across all published packages (fixed group, #310). 13 changesets: WGSL compiler fixes (mangler shadowing, leading-dot floats, scope activation, post-minify validation), honest tri-state validate, plain-data EntryPointInfo reflection, non-ASCII identifier rejection, CJS-reachable runtime, adapter-node software-fallback notice, handshake gate reorder, docs find ranking. Publishes to dist-tag next.
v0.2.0
The tree-shakeable, gpu-first release. npm install vgpu
- Free functions over a minimal kernel:
effect(gpu, shader),draw(gpu, …),geometry(gpu, …),frame(gpu, cb),clock(gpu)— apps pay only for what they import (an effect-only app ships ~25 KB gzip;init()alone is ~1 KB). Thegpu.*facade is gone; see the migration table in the package CHANGELOG. - Typed WGSL imports everywhere:
.wgslfiles import as typed modules in webpack, Vite, Next.js (guide included) and plain Node; third-party and monorepo workspace WGSL packages resolve in every layout (npm, pnpm, Yarn PnP). - Perlin and simplex noise in
@vgpu/wgsl-std(noise/perlin,noise/simplex+ fbm variants) with guaranteed (-1,1) ranges, GPU-verified against a bit-exact reference — and@vgpu/wgsl-stdnow ships withvgpu. - Mesh→Geometry rename, scene tree phase 1, per-experience bundle budgets enforced in CI,
clearColorper target,frame.cancel(), external-ticker support viaclock(gpu).advance(). - Agent-first docs:
npx vgpuguides you (or your agent) to the offline docs workflow;vgpu docs findmatches what agents actually type; runnable examples served from https://vgpu.sh.
Validated by three independent agent-driven integration builds (Next.js, Vite, headless Node) before promotion. Full details in each package's CHANGELOG.