Skip to content

feat: add @runtimed/notebook-preview package#731

Merged
markmiro merged 44 commits intomainfrom
notebook-preview-package-merged
Feb 6, 2026
Merged

feat: add @runtimed/notebook-preview package#731
markmiro merged 44 commits intomainfrom
notebook-preview-package-merged

Conversation

@markmiro
Copy link
Contributor

@markmiro markmiro commented Feb 5, 2026

Summary

  • Adds new @runtimed/notebook-preview package for rendering static notebook previews
  • Builds on @runtimed/components package with output renderers
  • Includes demo pages at /react.html and /index.html for testing
  • Fixes iframe height calculation and various Docker build issues

Test plan

  • Run pnpm dev and verify dev server starts correctly
  • Navigate to notebook-preview demo pages and verify rendering
  • Verify output components render correctly (text, markdown, JSON, images)
  • Run type checking: pnpm check
  • Test Docker builds: docker build -f Dockerfile.iframe-outputs .

Made with Cursor


Note

Medium Risk
Moderate risk due to introducing new workspace packages and rewiring build/deploy paths (CI, Docker, iframe builds) plus refactoring runtime output rendering imports; failures would surface as build breaks or missing/incorrect output rendering.

Overview
Introduces a new workspace package, @runtimed/components, that packages the notebook output renderers (including iframe comms + IframeOutput/IframeReactApp), shared UI primitives, Tailwind styles, and demo pages for reuse across apps.

Adds @runtimed/notebook-preview, a standalone Vite app that receives a Jupyter notebook JSON via postMessage, converts it to @runtimed/schema OutputData, and renders inputs/outputs using @runtimed/components (plus a separate output-types demo entrypoint).

Migrates the main web app and tests off the old shared-with-iframe in-repo components to import from @runtimed/components, adds a new /demo/outputs route, and updates iframe CSS sources accordingly; also tightens iframe message listener cleanup and adjusts JSON view + ANSI rendering for bundler compatibility.

Updates CI and Dockerfiles to ensure workspace builds/install succeed (explicitly building @runtimed/components, copying its manifests into images, and stripping it from the sync image where unused), expands ESLint ignore globs, and updates the lockfile for the new packages/deps.

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

markmiro and others added 30 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>
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>
Co-authored-by: Cursor <cursoragent@cursor.com>
- Add prebuild script to build @runtimed/components before main build
  (fixes "Failed to resolve entry for package" error in CI)
- Fix prettier formatting in ExecutionCount.tsx

Co-authored-by: Cursor <cursoragent@cursor.com>
@markmiro markmiro requested a review from rgbkrk February 6, 2026 00:04
@markmiro markmiro marked this pull request as ready for review February 6, 2026 00:04
@cursor
Copy link

cursor bot commented Feb 6, 2026

You have run out of free Bugbot PR reviews for this billing cycle. This will reset on February 26.

To receive reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial.

@markmiro markmiro changed the title feat: add @runtimed/components package and migrate output components feat: add @runtimed/notebook-preview package Feb 6, 2026
@markmiro markmiro merged commit e3126ce into main Feb 6, 2026
2 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