Skip to content

feat: add @runtimed/components package and migrate output components#729

Merged
markmiro merged 16 commits intomainfrom
components-package
Feb 2, 2026
Merged

feat: add @runtimed/components package and migrate output components#729
markmiro merged 16 commits intomainfrom
components-package

Conversation

@markmiro
Copy link
Contributor

@markmiro markmiro commented Feb 2, 2026

Summary

  • Creates new @runtimed/components package for notebook output rendering components
  • Migrates output renderers from src/components/outputs/shared-with-iframe to the new package
  • Updates Docker configurations (web, sync, iframe-outputs) to include the components package
  • Adds components dev command to PM2 ecosystem config

Test plan

  • Run pnpm dev:pm2 and verify all processes start correctly (including components)
  • Open a notebook and verify output rendering works (text, markdown, JSON, images)
  • Test AI tool call/result outputs display correctly
  • Verify Docker builds succeed: docker build -f Dockerfile.web .
  • Run type checking: pnpm check

Made with Cursor


Note

Medium Risk
Moderate risk: this migrates core output rendering and iframe comms into a new workspace package and changes build/Docker behavior; regressions could impact notebook output display and container builds.

Overview
Extracts notebook output rendering into a new workspace package. Adds packages/components (@runtimed/components) with build tooling (tsdown + Tailwind CSS output), exports for output renderers/iframe comms/UI helpers, and a new /demo/outputs page for exercising supported output types.

Migrates the app and iframe bundle to consume the package. Replaces in-app shared-with-iframe imports with @runtimed/components, wraps IframeOutput to inject VITE_IFRAME_OUTPUT_URI, updates iframe entry + Tailwind @source, adjusts prefetching and tests, and removes the old src/components/outputs/index.ts re-exports.

Updates build/dev infrastructure for the new package. CI builds @runtimed/components first, Dockerfiles copy/build the package (and strip it from the sync image install), PM2 adds a components dev process, and ESLint ignore globs are broadened.

Written by Cursor Bugbot for commit 6350b97. This will update automatically on new commits. Configure here.

markmiro and others added 10 commits February 2, 2026 11:04
Extracts shared output components into a new publishable package:

- Add packages/components/ with output renderers (Markdown, JSON, ANSI, etc.)
- Move shared-with-iframe components to the new package
- Update src/ imports to use @runtimed/components
- Update iframe-outputs to import from @runtimed/components
- Update Dockerfiles to include components package
- Fix eslint ignores for nested dist folders

The @runtimed/components package provides React components for rendering
notebook cell outputs, designed to be shared between the main app and
sandboxed iframe outputs.

Co-authored-by: Cursor <cursoragent@cursor.com>
Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Bugbot Autofix is OFF. To automatically fix reported issues with Cloud Agents, enable Autofix in the Cursor dashboard.

@markmiro markmiro merged commit 1ede7e6 into main Feb 2, 2026
1 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants