• Getting Started
    • Overview
    • Why Without JSX?
    • Installation
    • Usage
    • Styling
    • Theming
    • Portal System
    • Rules & Patterns
    • Framework Integration
    • FAQ
    • Release Notes
  • MUI Integration
  • Components
  • Hooks

Release Notes - MeoNode UI

This page is generated from the latest GitHub Releases.


v1.5.1 (2026-04-26)

View release on GitHub

Bug Fixes

  • types: harden DeepPaths for augmented MeoTheme (b5ca3a9)

v1.5.0 (2026-04-26)

View release on GitHub

Features

  • types: add MeoTheme augmentation for typed theme tokens (36bce42)

v1.4.6 (2026-04-25)

View release on GitHub

Bug Fixes

  • theme: resolve at-rule keys to concrete values on server (a9d9dc0)

Performance Improvements

  • theme: memoize replaceThemeTokensWithCssVars via module WeakMap (4afe0bf)

v1.4.5 (2026-04-25)

View release on GitHub

Bug Fixes

  • theme: resolve theme tokens carried by non-css props (sx, style) (eccb53e)
  • types: point package exports to the dist/types output (98a5540)

v1.4.4 (2026-04-24)

View release on GitHub

Bug Fixes

  • emotion: align server theme token resolution with client vars mode (9e9f9c4)
  • emotion: prevent empty-css hydration class drift (45edd78)
  • rsc: emit theme tokens as CSS vars in server style output (7a07cc1)
  • rsc: keep client-reference styling on a single render path (25b8580)
  • rsc: stop re-wrapping client-reference elements during child normalization (ebee585)
  • theme: keep client render output in CSS var mode (e95316b)

v1.4.4-beta.6 (2026-04-24)

View release on GitHub

Bug Fixes

  • emotion: align server theme token resolution with client vars mode (9e9f9c4)

v1.4.4-beta.5 (2026-04-24)

View release on GitHub

Bug Fixes

  • emotion: prevent empty-css hydration class drift (45edd78)

v1.4.4-beta.4 (2026-04-24)

View release on GitHub

Bug Fixes

  • rsc: stop re-wrapping client-reference elements during child normalization (ebee585)

v1.4.4-beta.3 (2026-04-24)

View release on GitHub

Bug Fixes

  • rsc: keep client-reference styling on a single render path (25b8580)

v1.4.4-beta.2 (2026-04-24)

View release on GitHub

Bug Fixes

  • theme: keep client render output in CSS var mode (e95316b)

v1.4.4-beta.1 (2026-04-24)

View release on GitHub

Bug Fixes

  • rsc: emit theme tokens as CSS vars in server style output (7a07cc1)

v1.4.3 (2026-04-23)

View release on GitHub

Bug Fixes

  • exports: keep StyleRegistry out of core main entrypoint (58b3eb3)

v1.4.2 (2026-04-23)

View release on GitHub

Bug Fixes

  • rsc: resolve themed props in server-bypassed client reference path (551e11c)

v1.4.1 (2026-04-23)

View release on GitHub

Bug Fixes

  • node: avoid server crashes when reading client-reference marker flags (4bb2aaf)

v1.4.0 (2026-04-23)

View release on GitHub

Bug Fixes

  • rsc: stabilize server-side emotion output for themed client references (5c97bbd)

Features

  • registry: expose shared StyleRegistry entrypoint (f7377a2)

v1.3.0 (2026-04-22)

View release on GitHub

Bug Fixes

  • ci: load rollup TypeScript config reliably in workflows (6a81783)

Features

  • node: support async node-like values in children resolution (97becc7)

v1.3.0-beta.1 (2026-04-21)

View release on GitHub

Bug Fixes

  • ci: load rollup TypeScript config reliably in workflows (6a81783)

Features

  • node: support async node-like values in children resolution (97becc7)

v1.2.0 (2026-02-15)

View release on GitHub

MeoNode UI v1.2.0 – Stack-Based Portal System

Release Date: 2026-02-15

Features & Refactors

  • portal: Implemented a new stack-based architecture using PortalProvider and PortalHost for managed overlay stacks (7196f6f).
  • helper: Introduced createDataChannel for high-performance, subscription-based state updates (6508c0a).
  • hook: Added usePortal and useDataChannel hooks for reactive interaction with the new systems (b2f7d19).
  • core: Refactored BaseNode and NodeUtil for better portal integration and removed legacy logic (91ced63).
    • BREAKING CHANGE: Legacy portal.hoc.ts has been removed in favor of the new Provider architecture.

Testing & Documentation

  • portal: Added integration tests to verify stack management and data synchronization across portals (92cd3c0).
  • docs: Updated the README with new implementation examples and usage patterns (3f7a314).

Resources


v1.2.0-0 (2026-02-15)

View release on GitHub

MeoNode UI v1.2.0-0 – Stack-Based Portal System

Release Date: 2026-02-15

Features & Refactors

  • portal: Implemented a new stack-based architecture using PortalProvider and PortalHost for managed overlay stacks (7196f6f).
  • helper: Introduced createDataChannel for high-performance, subscription-based state updates (6508c0a).
  • hook: Added usePortal and useDataChannel hooks for reactive interaction with the new systems (b2f7d19).
  • core: Refactored BaseNode and NodeUtil for better portal integration and removed legacy logic (91ced63).
    • BREAKING CHANGE: Legacy portal.hoc.ts has been removed in favor of the new Provider architecture.

Testing & Documentation

  • portal: Added integration tests to verify stack management and data synchronization across portals (92cd3c0).
  • docs: Updated the README with new implementation examples and usage patterns (3f7a314).

Resources


v1.1.4 (2026-02-15)

View release on GitHub

MeoNode UI v1.1.4 – Style Registry & SSR Performance

Release Date: 2026-02-15

Fixes

  • nextjs: Resolved duplicate style tag injection in StyleRegistry (91bec99).
    • Renamed registry.client.ts to style-registry.client.ts.
    • Implemented SSR ID tracking to prevent redundant CSS content during Next.js streaming.

Testing & Quality

  • emotion: Added style tag generation monitoring (0576f0c).
    • Verified that nested Div structures efficiently batch styles into single tags.
    • Confirmed state changes correctly append new rules without breaking existing ones.

Resources


v1.1.3 (2026-02-14)

View release on GitHub

MeoNode UI v1.1.3 – Core Optimization & API Cleanup

Release Date: 2026-02-15

Features & Refactors

  • hook: Removed deprecated usePortal and stripped update methods from NodePortal and Portal HOC to streamline the API (eb40bd1).
  • core: Major logic optimization for performance (27fdd1b):
    • Implemented static counters for deterministic instanceId generation.
    • Reduced array allocations in the iterative render loop.
    • Switched NodeUtil.isNodeInstance to instanceof BaseNode for better performance.
    • Added WeakMap caching for function prop hashes in NodeUtil.

Build & Tooling

  • rollup: Switched CommonJS output to .cjs extension in rollup.config.ts and package.json for better ESM/CJS compatibility (7f6a130).
  • git: Updated .gitignore to include AI-specific directories (.claude) (0607574).

Dependency Updates

  • deps: Updated next, react, rollup, and typescript-eslint to their latest versions (f95591e).

Resources


v1.1.2 (2025-12-22)

View release on GitHub

MeoNode UI v1.1.2 – ThemedCSSObject Nested Selectors

Release Date: 2025-12-22

Fix

  • types: fix ThemedCSSObject to support nested selectors and theme functions in deeply nested objects (f938be5)
    • Updated ThemedCSSObject to use an intersection type with an index signature, allowing arbitrary string keys (like pseudo-selectors and media queries) to correctly resolve theme functions.

Chore

  • deps: update dependencies to latest versions (51925b1)
    • Updated next to ^16.1.0, react-router-dom to ^7.11.0, rollup to ^4.54.0, @testing-library/react to ^16.3.1 and @typescript/native-preview to ^7.0.0.

Version Update

  • Current version: 1.1.2

Changelog & Commits


v1.1.1 (2025-12-05)

View release on GitHub

MeoNode UI v1.1.1 – Style Prop Type Fix

Release Date: 2025-12-05

Fix

  • types: update HasCSSCompatibleStyleProp to use CSSProperties directly (4e23499)

Version Update

  • Current version: 1.1.1

Changelog & Commits


v1.1.0 (2025-12-05)

View release on GitHub

MeoNode UI v1.1.0 – Strict Types, Theme Features & Portal Optimizations

Release Date: 2025-12-05

Feat

  • types: enforce strict component props and improve type inference (047c0f8)
    • Redefined MergedProps and introduced ValidateComponentProps to strictly validate props passed to Node and createNode.
    • Added ExactProps generic constraint to prevent excess property passing, improving type safety.
    • Enhanced PropsOf to better infer props from React components, including forwardRef and Memo components.
  • theme: enable theme variable resolution in style keys (30ca1fd)
    • Updated ThemeUtil to resolve theme variables within style keys (e.g., media queries like @media (max-width: theme.breakpoint.lg)).

Refactor

  • portal: optimize portal implementation and fix types (9643682)
    • Refactored Portal HOC to use a cleaner, more efficient implementation for provider wrapping.
    • Improved type definitions for PortalLauncher and PortalProps to ensure correct prop inference.

Fix

  • util: correct function child detection and rendering logic (944cfbd)
    • Updated isFunctionChild type definition to correctly identify function children while excluding React components (Class, Memo, ForwardRef).
    • Updated functionRenderer type definition to properly handle function child execution.

Test

  • test: refactor tests to align with strict types and fix leaks (40c87c7)
    • Updated various tests (advanced-features, leak-repro, memoization) to comply with the new strict type requirements.
    • Added strict-component-props.test.ts and theme-key-resolution.test.ts to verify new features.

Chore

  • build: update build config and dependencies (a9367e0)
    • Updated package.json scripts and tsconfig.json for better build and test processes.

Version Update

  • Current version: 1.1.0

Changelog & Commits


v1.0.1 (2025-11-30)

View release on GitHub

MeoNode UI v1.0.1 – React Component Prop Handling Fix

Release Date: 2025-11-30

Fix

  • core: fix style prop extraction for React Components (19618b4)
    • Modified processRawNode to prevent style props from being extracted and flattened into HTML attributes when the node is a React Component.
    • This ensures components receive their style prop intact as an object, preventing invalid attribute errors.

Version Update

  • Current version: 1.0.1

Changelog & Commits


v1.0.0 (2025-11-28)

View release on GitHub

MeoNode UI v1.0.0 – Performance and Caching Enhancements

Release Date: 2025-11-28

Perf

  • cache: Remove props, CSS, and theme caching to improve performance and reduce overhead. (206361d), (d7baa16)

Fix

  • theme-provider: Allow setTheme to accept an updater function for more flexible state management. (be8d261)
  • core: Improve mount tracking for cached elements by ensuring MeoNodeUnmounter wraps all renderable nodes. (d0ca27e)
  • theme-provider: Remove incorrect @private JSDoc tag from ThemeProvider component. (816e398)

Test

  • performance: Add controlled input performance tests to simulate human typing and measure deps memoization effectiveness. (bba48b8)

Docs

  • readme: Update README.md to reflect the removal of automatic caching and emphasize deps-based memoization. (2600d9c)

Version Update

  • Current version: 1.0.0

Changelog & Commits


v1.0.0-0 (2025-11-28)

View release on GitHub

MeoNode UI v1.0.0-0 – Mount Tracking and Caching Overhaul

Release Date: 2025-11-27

Fix

  • core: Overhaul mount tracking, caching, and fix stableKey generation to prevent memory leaks (af1b707)
    • Replaced the simple Set in MountTrackerUtil with a reference-counting system (Map) to ensure a node is only considered unmounted when all its instances are gone.
    • The root element of a render cycle is now wrapped with a MeoNodeUnmounter component before being cached to guarantee that the unmount logic is always present, even for cached elements.
    • Improved stableKey generation in NodeUtil.createPropSignature to correctly differentiate function props by hashing their string representation, preventing cache collisions for components with different onClick or similar handlers.
    • Added new test suites (leak-repro.test.ts, props-caching-leak.test.ts) to specifically target and verify the leak fixes.

Perf

  • cache: Improve props cache eviction strategy (ce2f561)
    • Adjusted the propProcessingCache eviction logic in NodeUtil to be more aggressive, removing enough items to get back to the CACHE_SIZE_LIMIT plus an additional buffer batch, preventing unbounded growth under high load.

Feat

  • deps: Add react-router-dom and test polyfills (29dcf13)
    • Introduced react-router-dom as a new development dependency to enable integration testing with React Router.
    • Added whatwg-fetch and Node.js util polyfills to jest.setup.ts for compatibility in the Jest environment.

Test

  • react-router: Add integration tests for react-router-dom (8478623)
    • Introduced a new test suite to verify the proper functioning and caching behavior of MeoNode components when used within a React Router environment.
    • Includes tests for declarative and programmatic navigation, ensuring that component lifecycles and caching mechanisms interact correctly with React Router's dynamic rendering.

Chore

  • package: Rename publish:pre script to publish:prerelease and add publish:premajor script in package.json (a98ba69)

Version Update

  • Current version: 1.0.0-0

Changelog & Commits


v0.4.14 (2025-11-23)

View release on GitHub

MeoNode UI v0.4.14 – Performance and Caching Enhancements

Release Date: 2025-11-23

Perf

  • cache: enforce dependency-based caching with shouldCacheElement helper (fab5525)
    • Introduces NodeUtil.shouldCacheElement() helper to centralize and enforce the opt-in caching strategy where only nodes with explicit dependencies are cached
    • Completes the memory optimization by closing loopholes where nodes without dependencies were still being cached based on stableKey alone
    • Replaces 4 inconsistent cache eligibility checks in BaseNode.render():
      • Cache lookup for parent nodes
      • Cache lookup for child nodes
      • Cache storage during rendering
      • MeoNodeUnmounter wrapping decision
    • Impact: Reduces memory usage, ensures mount tracking and cache operations stay in sync, improves code maintainability

Test

  • memoization: refine test to assert precise cache size after rendering components (8ded697)

Chore

  • type: remove src/types/env.d.ts as it is no longer needed (aab4299)

Version Update

  • Current version: 0.4.14

Changelog & Commits


v0.4.13 (2025-11-23)

View release on GitHub

MeoNode UI v0.4.13 – Props Handling and Leakage Fixes

Release Date: 2025-11-23

Fix

  • props: improve prop handling and prevent leakage (73cc696)
    • This commit refactors prop handling within the MeoNode ecosystem to ensure that internal processing props are not leaked to the DOM.
    • Key changes:
      • The MeoNodeUnmounter is updated to correctly isolate and pass through props intended for the underlying DOM element, improving compatibility with libraries like MUI.
      • Internal props such as node, css, and disableEmotion are now explicitly prevented from being rendered as HTML attributes.
      • Added comprehensive tests to verify that standard HTML attributes are passed through while internal props are successfully filtered out.
    • This improves the robustness and predictability of component rendering.

Test

  • props: add tests for prop handling and leakage (a508e10)
    • Added new tests to verify that component props are correctly passed as HTML attributes, handle createNode and Node() correctly, and crucially, that internal MeoNode props are not leaked to the DOM.

Chore

  • core: remove unnecessary type assertion from finalChildren assignment (827b3ef)

Version Update

  • Current version: 0.4.13

Changelog & Commits


v0.4.12 (2025-11-21)

View release on GitHub

MeoNode UI v0.4.12 – Build System Migration to Rollup

Release Date: 2025-11-21

Feat

  • build: migrate from Babel to Rollup with ESM and CJS support (70326a1)
    • Replace Babel build system with Rollup configuration to prevent output legacy javascript code
    • Add support for both ESM and CJS output formats
    • Update package.json exports to point to new build outputs
    • Add Rollup plugins for TypeScript, commonjs, minification, and preserve directives
    • Remove Babel-related dependencies and configuration files
    • Update tsconfig.json to use 'preserve' module setting and bundler resolution
    • Configure build to output to separate ESM and CJS directories

Version Update

  • Current version: 0.4.12

Changelog & Commits


On this page