Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/donjayamanne/typescript-notebook
Run JavaScript and TypeScript in node.js within VS Code notebooks with excellent support for debugging, tensorflowjs visulizations, plotly, danfojs, etc
https://github.com/donjayamanne/typescript-notebook
danfojs jupyter notebook plotly tensorflowjs typescript
Last synced: 27 days ago
JSON representation
Run JavaScript and TypeScript in node.js within VS Code notebooks with excellent support for debugging, tensorflowjs visulizations, plotly, danfojs, etc
- Host: GitHub
- URL: https://github.com/donjayamanne/typescript-notebook
- Owner: DonJayamanne
- License: mit
- Created: 2021-02-22T05:56:10.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2022-02-21T09:57:20.000Z (over 2 years ago)
- Last Synced: 2024-10-06T17:15:22.509Z (about 1 month ago)
- Topics: danfojs, jupyter, notebook, plotly, tensorflowjs, typescript
- Language: TypeScript
- Homepage: https://marketplace.visualstudio.com/items?itemName=donjayamanne.typescript-notebook
- Size: 27.3 MB
- Stars: 909
- Watchers: 12
- Forks: 40
- Open Issues: 55
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Node.js Notebooks
## Features
* Enhanced REPL experience for Node.js in Notebooks (with top level awaits)
* Run & debug JavaScript, TypeScript code in node.js
* Built in support for typescript (ships with [TypeScript](https://www.typescriptlang.org/) & [ts-node](https://typestrong.org/ts-node/)).
* Built in support for [plotly](https://plotly.com/javascript/) (plotly.js is shipped with the extension)
* Rich (inline visualizations) using [@tensorflow/tfjs-vis](https://www.npmjs.com/package/@tensorflow/tfjs-vis) & [Tensorboards](https://www.tensorflow.org/tensorboard)
* Excellent support for [danfo.js](https://danfo.jsdata.org/) (rich HTML output and plots)
* Excellent support for [arquero](https://uwdata.github.io/arquero/) (rich HTML output)
* Run shell scripts within the notebook cell.
* Quickly prototype and view HTML/JavaScript/CSS output
* Support for user input using [readline](https://nodejs.org/api/readline.html#readline_readline_createinterface_options)Packages such [plotly](https://plotly.com/javascript/), [tfjs-vis](https://www.npmjs.com/package/@tensorflow/tfjs-vis) & [danfo.js](https://danfo.jsdata.org/) support rich visualization only in the browser,
however, this extension leverages the power of Notebooks to provide the same rich visualizations when targeting node.js.Use the command `Open a sample node.js notebook` to open a sample notebook to get started with plotly.js, danfo.js, tensorflow.js, etc.
## Getting started
* For a REPL experience use the command `Open Node.js REPL`
* Consider installing the [Jupyter](https://marketplace.visualstudio.com/items?itemName=ms-toolsai.jupyter) extension for an enhance user interface (toolbars).
* For a notebook experience, create a file with the extension `*.nnb`, e.g. `sample.nnb`
* Or use the menu item `New File...` to create a Node.js notebook![Repl](https://raw.githubusercontent.com/DonJayamanne/typescript-notebook/main/images/REPL.gif)
![Demo](https://raw.githubusercontent.com/DonJayamanne/typescript-notebook/main/images/demo.gif)## Examples
* Use the command `Open a sample node.js notebook` to open a sample notebook.
* Use the command `Welcome: Open Walkthrough...` to checkout the samples.## Requirements
* node.js >= 12
* node.js needs to be in the current path## Roadmap
* Open a plain js/ts file as a notebook & vice versa.
* Better renderers for tabular data (arquero, danfo.js, etc)
* [Vega](https://vega.github.io/vega/) plots without having to install vega
* Custom node arguments### Known issues, workarounds and technical details
* See [here](https://github.com/DonJayamanne/typescript-notebook/wiki/Kernel-behaviour-(known-issues-&-workarounds)) for more details## Thanks
Thanks to the various packages we provide integrations with which help make this extension useful:
* [ts-node](https://typestrong.org/ts-node/)
* [Tensorflow.js](https://www.tensorflow.org/js)
* [plotly](https://plotly.com/javascript/)
* [danfo.js](https://danfo.jsdata.org/)
* [node-pty](https://github.com/microsoft/node-pty)
* [arquero](https://uwdata.github.io/arquero/)