DonJayamanne / vscode-notebook-renderer-starter

Notebook renderer starter template

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

vscode-notebook-renderer-starter

⚠️ Work-in-progress starter code for custom notebook renderers in VS Code. Expect this to change as notebooks matures. ⚠️

This starter includes:

  • 🖥️ TypeScript code to create a simple NotebookOutputRenderer
  • 📦 A Webpack build for renderer client code
  • ⚡ Support for hot module reloading and safe boilerplate
  • 🎨 CSS modules support

Getting this Sample

  1. git clone https://github.com/microsoft/vscode-notebook-renderer-starter.git: clone it
  2. cd vscode-notebook-renderer-starter && npm install: install dependencies
  3. code-insiders .: Open the folder in VS Code Insiders
  4. Hit F5 to build+debug

Structure

A Notebook Renderer consists of code that runs in the VS Code Extension Host (Node.js), which registers the renderer and passes data into the UI code running inside a WebView (Browser/DOM).

This uses TypeScript project references. There are three projects in the src directory:

  • extension contains the code running in Node.js extension host. It's compiled with tsc.
  • client is the UI code, built by Webpack, with access to the DOM.
  • common contains code shared between the extension and client.

When you run watch, compile, or dev, we invoke both tsc and webpack to compile the extension and the client portion of the code.

Todo

  • Toggle between loading from the webpack dev server and disk #95988
  • Localization?

About

Notebook renderer starter template

License:MIT License


Languages

Language:TypeScript 84.6%Language:JavaScript 14.9%Language:CSS 0.5%