Skip to content

Releases: Exoridus/ExoJS

v0.9.0

25 May 06:53

Choose a tag to compare

ExoJS v0.9.0

Release Date: 2026-05-24

Changelog

Migration guide

Breaking — Public API consolidation

  • ApplicationOptions moved from flat top-level fields to grouped canvas, loader, rendering, and input sections.
  • Loader option renames: resourcePathbasePath, requestOptionsfetchOptions.
  • Application scene accessor rename: app.sceneManagerapp.scene.
  • Active scene getter rename: SceneManager.sceneSceneManager.currentScene.
  • Removed Scene.getParticipationPolicy() in favor of direct scene.stackMode access.
  • Removed duplicate/alias APIs on scene objects:
    • SceneNode: parentNode, bounds, globalTransform, localBounds, setCullable()
    • RenderNode: setCacheAsBitmap(), setFilters()
    • Text: setText(), setStyle()
    • Color: .red/.green/.blue/.alpha (use .r/.g/.b/.a)
  • Tween.to() now enforces numeric target keys at the TypeScript type level (NumericKeys<T>).

Added / Improved

  • Added skew transforms on scene nodes (skewX, skewY, setSkew), including bounds/hit-test correctness updates for skewed nodes.
  • Added typed asset loading primitives and flows (Asset<T>, Assets<M>, LoadingQueue) while keeping low-level loader usage available.
  • Improved tween ergonomics and lifecycle:
    • managed tweens correctly re-register on restart after eviction (stop/complete)
    • TweenManager.sequence() helper for chain creation
    • scene-scoped tween proxy lifecycle behavior aligned with scene disposal
  • Loop/timing hardening:
    • pauseOnHidden resume delta-spike fix
    • internal max-delta clamp for safer simulation updates
    • backend.stats.rawFrameDeltaMs for profiling unclamped frame delta
  • Collision/sweep documentation and response semantics were clarified and aligned to source behavior.

Docs / API reference

  • Published the v0.8.x → v0.9.0 migration guide in the docs guide tree.
  • Regenerated API reference pages from the current source surface (215 API pages).
  • API docs now hide internal-only methods marked for internal engine wiring.

Build / Workspace / CI

  • Workspace preparation completed for the site package under root npm workspaces with root-driven install/build flow.
  • Consolidated root scripts for site orchestration (site:build, site:build:api) and bootstrap install.
  • Removed separate site/package-lock.json in favor of a root lockfile workflow.
  • Vendor sync scripts were hardened for both hoisted and non-hoisted dependency layouts (resolver-based Monaco and Exo vendor path discovery).
  • Rollup build constants and environment-aware build modes were introduced (production/development, __DEV__, __VERSION__, __COMMIT_SHA__, __BUILD_ENV__).
  • CI/release/pages workflows were aligned to root workspace installation and root-script site builds.

Verification

  • Engine checks pass at HEAD: typecheck clean, strict lint clean, tests passing (106 suites / 1452 tests), exports verification clean.
  • Site API generation and site build pass on the workspace-oriented pipeline.

Install: npm install @codexo/exojs@0.9.0

Full Changelog: View Changes | All Releases

v0.8.4

14 May 18:00

Choose a tag to compare

ExoJS v0.8.4

Release Date: 2026-05-14

Changelog

Site / Guide

  • Full English Guide complete through Parts 3–8. Drawing (5 chapters),
    Input (4), Audio (4), Effects (3), Advanced (5), and Recipes (8) are now
    written, editorially consistent, and source-verified against the engine
    API as shipped in v0.8.3.

  • v0.8.3 feature chapters integrated. Audio-reactive visualization (5.5),
    Custom mesh shaders (6.4), and Render pipeline debugging (7.6) reflect the
    BeatDetector visual getters, AudioAnalyser mel/log spectrum API,
    MeshShader dual GLSL + WGSL class shape, and RenderPassInspectorLayer.

  • Full-guide editorial and source/API verification pass. All 38 drafted
    chapters verified for internal consistency, correct API surface references,
    and accurate example cross-links. Terminology, heading conventions, and
    cross-part forward/backward references aligned in a single pass.

  • 39 English Guide routes verified across dark/light and desktop/mobile
    screenshot matrix.
    156/156 captures successful (39 routes × 2 themes ×
    2 viewports).

Release Tooling

  • scripts/release.mjs replaced by scripts/release.ts. Script is now
    type-checked as part of the TypeScript codebase.

  • scripts/generate-release-notes.ts. New standalone tool that extracts
    a version section from CHANGELOG.md, resolves the previous semver tag from
    git history or the changelog, fills the .github/templates/release-notes.md
    template, and writes the result to a specified output path. Exposed as
    npm run release:notes.

  • GitHub Releases now receive populated changelog-driven markdown bodies.
    The CI release workflow calls release:notes and passes the rendered file
    to gh release create --notes-file.

  • Historical tag support. release:notes can generate notes for any past
    tag (e.g., v0.8.2, v0.8.3) — useful for backfilling GitHub Release pages.

  • Windows-safe npm pack --dry-run in verify:package. The --cache
    flag now points to a project-local .npm-cache directory, avoiding the
    cross-user npm cache permission error that affected verify:release on
    Windows CI.

Verification

  • Engine: typecheck clean, lint:strict 0/0, 1338/1338 tests, verify:release green.
  • Site: 494-page build clean, check-ts 0 errors / 0 warnings.
  • Screenshot smoke: 36/36. Guide visual matrix: 156/156 captures.

Install: npm install @codexo/exojs@0.8.4

Full Changelog: View Changes | All Releases

v0.8.3

10 May 05:42

Choose a tag to compare

v0.8.3

v0.8.2

09 May 10:48

Choose a tag to compare

v0.8.2