Skip to content

Blog

Version v0.1.88

This release enhances the development environment setup and introduces a multi-stage Dockerfile to streamline building and running the application with improved platform support.

New Features

  • Added a multi-stage Dockerfile that uses official pixi and uv images, includes Ubuntu 24.04 runtime, and supports building and serving the app via Docker. Also updated .dockerignore and pyproject.toml for better Docker integration and Apple Silicon support (dc4f13) (Eric Ma)
  • Introduced a .cursor/environment.json file to configure the development environment, enabling consistent setup for contributors using Docker (a17d25) (Eric Ma)

Bug Fixes

  • None

Deprecations

  • None

Version v0.1.87

This release includes a bug fix that improves the user experience by hiding the API key prompt when providers are already configured.

New Features

  • No new features in this release.

Bug Fixes

  • Hide API key prompt when providers are configured to avoid unnecessary prompts (877543) (Cursor Agent)

Deprecations

  • No deprecations in this release.

Version v0.1.86

This release improves URL fetching by sanitizing HTML to markdown and enhancing security with CSS-safe node classes. It also refactors DuckDuckGo (DDG) search and research endpoints into a plugin with better source capping per iteration. Additionally, new end-to-end Cypress tests have been added for DDG search and research functionality.

New Features

  • Refactor DuckDuckGo search and research endpoints into a plugin and add a per-iteration source cap to allow all 4 iterations to run (cdfb19) (Eric Ma)
  • Add Cypress end-to-end tests for DuckDuckGo search and research, including happy and error paths with stubbed API responses and SSE streams (7ff71e) (Eric Ma)

Bug Fixes

  • Sanitize fetched URLs to markdown using html2text, strip unsafe style/script tags, add CSS-safe kebab-case node classes, and add related tests to prevent raw HTML/CSS exposure (741bf5) (Eric Ma)
  • Remove trailing whitespace in v0.1.85 release notes (e1b58c) (Eric Ma)

Deprecations

  • None

Version v0.1.85

This release introduces a comprehensive PowerPoint (PPTX) integration featuring a new node type with slide navigation, captioning, and narrative weaving capabilities powered by AI. The backend now supports robust PPTX upload handling and structured slide text extraction with improved rendering fallbacks. The UI has been enhanced for a smoother user experience with tooltips and action bars. Additionally, the PPTX functionality has been modularized for better maintainability. Several bug fixes and dependency updates are also included.

New Features

  • Added a new PowerPoint node UI with slide drawer, slide navigation, slide extraction to image nodes, and user-triggered captioning and narrative actions (c71c6e) (Eric Ma)
  • Added backend PPTX upload handler that extracts slide text/titles using python-pptx and renders slide images via LibreOffice with robust rendering fallbacks (c33e39) (Eric Ma)
  • Added structured backend endpoints for PPTX caption and title generation, replacing vision-based streaming with structured {title, caption} outputs (32edf7) (Eric Ma)
  • Added a PowerPoint narrative weaving action that combines slide titles and captions into a narrative summary streamed into a new AI node (6bfe5d) (Eric Ma)
  • Added a configurable PPTX narrative weaving modal with AI-suggested style presets, controls, backend endpoint for preset generation, and static fallback; updated Cypress spec to validate modal flow (eca1a5) (Eric Ma)
  • Added backend unit tests, plugin harness tests, and Cypress spec with fixture for PPTX upload and navigation (658405) (Eric Ma)
  • Added python-pptx dependency and installed LibreOffice with baseline fonts in Modal image for server-side PPTX slide rendering (cd86bb) (Eric Ma)
  • Moved PPTX request/response models and /api/pptx endpoints into a dedicated plugin module registered at app startup; added python-slugify for preset ID normalization and documentation (b826b1) (Eric Ma)

Bug Fixes

  • Fixed PowerPoint drawer flashing on interactions by patching node body and output panel DOM in-place to avoid full re-render and focus loss (a66302) (Eric Ma)
  • Fixed Modal image builds on Debian bookworm by switching from libwebp6 to libwebp7 to ensure LibreOffice and Pillow WebP support install cleanly (cf0b2b0) (Eric Ma)

Deprecations

  • None in this release

Version v0.1.84

This version introduces a new feature that improves navigation by allowing users to zoom directly to a node when it is selected from a search, enhancing the user experience.

New Features

  • Added the ability to zoom to a node upon search selection, similar to using the 'z' key (b90da0) (Eric Ma)

Bug Fixes

  • None

Deprecations

  • None

Version v0.1.83

This release improves the tag removal experience by fixing an issue where removing a tag required a double-click. It also enhances the undo/redo functionality related to tags and adds comprehensive end-to-end tests to ensure tag system reliability.

New Features

  • Added comprehensive Cypress end-to-end tests covering tag creation, assignment to single and multiple nodes, tag highlighting, tag removal, and tag deletion (d7eef0) (Eric Ma)

Bug Fixes

  • Fixed tag removal requiring double-click by removing redundant rendering and improving event handling (d7eef0) (Eric Ma)
  • Corrected undo/redo behavior for tag changes by updating how snapshots are read and fixing undoManager API usage (d7eef0) (Eric Ma)

Deprecations

  • None

Version v0.1.82

This release focuses on improving the code feature by migrating it into a dedicated plugin for better modularity and maintainability. It also enhances the testing environment by increasing the Cypress viewport size and cleaning up placeholder tests. Additionally, minor fixes were made to previous release notes formatting.

New Features

  • Migrated all code-related handlers and logic into a dedicated CodeFeature plugin, improving code organization and plugin modularity (ed8cb0) (Eric Ma)
  • Updated Cypress tests to reflect changes in the code feature and improved output panel selectors (ed8cb0) (Eric Ma)

Bug Fixes

  • Fixed PyodideRunner API calls to use the correct instance within the CodeFeature plugin (ed8cb0) (Eric Ma)
  • Corrected output panel display by properly setting outputExpanded and output fields (ed8cb0) (Eric Ma)
  • Fixed code editor modal routing to use direct modal calls instead of nodeEditContent events (ed8cb0) (Eric Ma)
  • Removed trailing whitespace in the v0.1.81 release notes file (18a245) (Eric Ma)

Deprecations

  • Removed placeholder test from code_node.cy.js to clean up test suite (4eb3c2) (Eric Ma)

Version v0.1.81

This release focuses on improving caching and performance in CI workflows, fixing permission and duplication issues with Ollama model caching, enhancing test coverage for the Generate UI workflow, and resolving several bugs related to the CodeFeature plugin and Cypress tests.

New Features

  • Added tests for the interactive Generate UI on code nodes, including showing, canceling via button or Escape key, and generating code with mocked responses (50705f) (Eric Ma)
  • Enabled npm dependency caching in Cypress workflows to speed up CI by avoiding repeated npm installs (404267) (Eric Ma)

Bug Fixes

  • Fixed permission errors by caching only the Ollama models directory instead of the entire .ollama directory, preventing access issues with sensitive files (39837b) (Eric Ma)
  • Prevented duplicate Ollama model pulls in CI by checking if a model already exists before pulling, reducing redundant downloads (2413c3) (Eric Ma)
  • Improved Ollama cache setup with explicit directory creation and enhanced logging for cache hits/misses and directory sizes (161910) (Eric Ma)
  • Updated test_app_init to reflect CodeFeature migration by removing methods moved to the CodeFeature plugin, fixing CI test failures (07f71d) (Eric Ma)
  • Fixed multiple CodeFeature issues including syntax errors, command registration, API usage, null checks, micropip loading, and Cypress test selectors to ensure stability and correctness (32332d) (Eric Ma)

Deprecations

  • Removed duplicated /code command from BUILTIN_SLASH_COMMANDS as it is now managed by the CodeFeature plugin (32332d) (Eric Ma)

Version v0.1.80

This release focuses on improving the matrix plugin by fully encapsulating undo/redo logic within the plugin architecture, enhancing test coverage with new end-to-end tests, and refactoring clipboard copy functionality to be self-contained. Additionally, it introduces better plugin support for custom undo/redo handlers and improves test reliability and documentation.

New Features

  • Added plugin action handler registration to the undo manager, allowing plugins to own their undo/redo logic and handlers, with full integration in the matrix plugin (0be33c) (Eric Ma)
  • Added Cypress end-to-end tests for the matrix copy-to-clipboard keyboard shortcut, verifying copy functionality and guard conditions (2544a6) (Eric Ma)
  • Documented Cypress E2E test files and running patterns for UI and keyboard interaction testing in AGENTS.md (19ced7) (Eric Ma)
  • Refactored matrix undo/redo Cypress tests for improved determinism and reliability by mocking APIs and simplifying test cases (7c16e0) (Eric Ma)

Bug Fixes

  • Added Ollama health check step in the Cypress AI workflow to prevent test timeouts caused by service unavailability (0be33c7) (Eric Ma)

Deprecations

  • Removed matrix undo/redo logic from the core app.js, fully migrating it to the matrix plugin to follow plugin architecture principles (d643a1) (Eric Ma)
  • Removed legacy streamingMatrixCells state and external clipboard formatting utilities, replacing them with self-contained methods in the MatrixNode class (eaf6a8) (Eric Ma)

Version v0.1.79

This release focuses on improving the matrix plugin's undo/redo functionality by fully encapsulating its logic within the plugin architecture. It introduces a new plugin action handler registration mechanism in the UndoManager, refactors matrix undo/redo handling to use this mechanism, and enhances test reliability and determinism. Additionally, a fix was made to the Cypress AI workflow to ensure Ollama service readiness and prevent test timeouts.

New Features

  • Added plugin action handler registration to the UndoManager, allowing plugins to register and manage their own undo/redo handlers, and updated the MatrixFeature to use this mechanism directly for undo actions (760968) (Eric Ma)
  • Refactored matrix undo/redo logic by moving it from app.js into the matrix plugin, including new undo/redo handlers, removal of matrix-specific cases from core app code, added unit and Cypress tests, and updated documentation to reflect the plugin-based undo/redo pattern (73c30e) (Eric Ma)

Bug Fixes

  • Fixed Cypress AI workflow by adding an explicit health check for Ollama before pulling the model, preventing test timeouts due to Ollama service unavailability (eb952c) (Eric Ma)

Deprecations

  • Removed matrix undo/redo handling from app.js, delegating all related logic to the matrix plugin to follow the plugin architecture principle (73c30e) (Eric Ma)