Skip to content

Neo.mjs v11.7.0 Release Notes

Choose a tag to compare

@tobiu tobiu released this 20 Nov 13:32
· 293 commits to dev since this release

This release introduces a foundational architectural enhancement for multi-window application support, refactoring core systems to rely on windowId instead of appName. This change enables multiple instances of the same application to coexist across different windows without conflict, a critical requirement for advanced desktop-like web experiences. We have also significantly expanded our AI-Native capabilities, documenting the use of custom MCP servers and the latest Gemini models.

✨ Highlights

🖥️ Multi-Window Architecture Refactoring

  • Neo.apps by Window ID: The central Neo.apps registry has been refactored to key applications by their unique windowId rather than their appName. This solves a critical issue where multiple instances of the same app (e.g., in a shared worker context) would overwrite each other. A new Neo.appsByName registry has been introduced to look up apps by name when needed. (Issue #7820)
  • Precision DOM Updates: The Neo.applyDeltas method has been updated to accept windowId instead of appName. This ensures that DOM updates—such as those triggered by plugins or direct manipulations—are routed to the correct browser window, eliminating ambiguity in multi-window setups. (Issue #7822)
  • Robust Cross-Window Communication: Child apps (like the SharedDialog demos) now correctly identify their specific parent window instance using openerId, ensuring reliable communication even when multiple parent instances exist.

🤖 AI-Native Development & Documentation

  • "I Am Gemini 3": We've published a comprehensive blog post detailing how Neo.mjs is built using a "Team of AI Agents" architecture. This post showcases the power of our custom MCP servers (knowledge-base, memory-core, github-workflow) and how they enable high-velocity, architectural evolution. (Issue #7817)
  • Tooling Visibility: The blog post was updated to highlight the importance of the chrome-devtools MCP server, bridging the gap between high-level code abstractions and runtime DOM reality. (Issue #7818)

🧪 Testing Suite Updates

  • Test Context Alignment: The Playwright test suite setup.mjs has been updated to align with the new windowId-based architecture, ensuring unit tests run with a valid window context (defaulting to 1). This prevents regressions and ensures our tests accurately reflect the new multi-window reality. (Issue #7822)

📦 Full Changelog

  • Blog: I Am Gemini 3. I Am Not a Chatbot. I Am a Contributor. (Issue #7817)
  • Blog Update: Add chrome-devtools to MCP tooling list (Issue #7818)
  • Add the Gemini 3 blog post to the portal app (Issue #7819)
  • Refactor Neo.apps to support multi-window instances (Issue #7820)
  • Refactor Neo.applyDeltas to use windowId instead of appName (Issue #7822)

All changes in 1 commit: 97180f5