@jwrunge/manifold-repl
v1.0.1
Published
Browser-based REPL with Manifold-flavored syntax helpers built on CodeMirror
Downloads
5
Maintainers
Readme
Manifold REPL
A browser demo environment for the Manifold TypeScript/JavaScript library.
Installation
npm install @jwrunge/manifold-replThe package publishes both ES module and UMD bundles under the @jwrunge/manifold-repl scope: https://www.npmjs.com/package/@jwrunge/manifold-repl
Quick start (TypeScript / bundlers)
import initManifoldRepl from "@jwrunge/manifold-repl";
import "@jwrunge/manifold-repl/style.css";
await initManifoldRepl("#repl-root");The default export is an async function that mounts the workbench in the element you pass (a CSS selector string or an HTMLElement). You can optionally provide an array of virtual files to seed the workspace.
Quick start (script tag)
<link
rel="stylesheet"
href="https://cdn.jsdelivr.net/npm/@jwrunge/manifold-repl/dist/manifold-repl.css"
/>
<div id="repl-root"></div>
<script src="https://cdn.jsdelivr.net/npm/@jwrunge/manifold-repl/dist/manifold-repl.umd.js"></script>
<script>
(async () => {
await window.ManifoldRepl.default("#repl-root");
})();
</script>The UMD build attaches itself as window.ManifoldRepl. The default export mirrors the TypeScript API.
Styling
The package ships with a compiled stylesheet at @jwrunge/manifold-repl/style.css. Import it via your bundler or include it directly from a CDN when using the script-tag build.
Limitations & Notes
- Type stripping is not full TypeScript compilation. The REPL exposes a
transpileTypeScripthelper that removes type annotations, but it is intentionally lightweight and does not attempt complete TS transformation. - Manifold attribute highlighting uses JavaScript heuristics. The editor bundles a heuristic highlighter for Manifold attribute syntax. For precise highlighting, use the official Manifold language server: https://github.com/jwrunge/manifold-lsp.
- Syntax support is focused on quick exploration. If you need richer IDE features, pair the REPL with the Manifold LSP in an editor like VS Code.
Contributing & Feedback
Bug reports and feature requests are welcome! Please open an issue in the repository: https://github.com/jwrunge/manifold-repl/issues.
If you run into gaps in highlighting, incorrect stripping, or missing functionality, let us know. Contributions and ideas are always appreciated.
