Skip to content

JerryI/wolfram-js-frontend

Repository files navigation

Open-Source Notebook Interface for Wolfram Language

Your Next-Gen Digital Notebook for Physics, Math, and Data Science

Preview

A lightweight, cross-platform alternative to Mathematica, built using open-source tools and the free Wolfram Engine.

WLJS Notebook is free software based on the Wolfram Engine.

You don’t need Mathematica installed to use WLJS Notebook. No subscription required—just a one-time registration at wolfram.com for personal use.

See the license agreement for details.

Developed through the collaboration of physicists and programmers. Designed for real-world applications in science ⚗️, math 🧮, and education 📚.

Resources

Recommended Wolfram Engine: Version 13.3 or higher

The algorithms, functions, and other components of the Wolfram Language provided by the Wolfram Engine are the intellectual property of Wolfram Research, Inc.

Showcase

Pages featuring real-world problems solved using WLJS Notebook, published as interactive notebooks running in your browser.

Notebooks presented as static web pages showcasing various examples demonstrating the power of Wolfram Language and our frontend.

Highlights

Not Just Another Jupyter-Like Notebook 🧨

Blazing-fast dynamics, GUI components, and powerful Mathematica syntax enhancements out of the box.

alt text

  • No more static pre-rendered graphics! Most native Mathematica plotting functions are supported.
  • Optimized for real-time dynamics and interactivity.

Dynamic Plots

High-Performance Rendering

The entire scene above is generated on the Wolfram Kernel and streamed to WebGL buffers via low-latency binary sockets.

🔗 Interactive Fluid Simulation

Fluid Simulation

Command Palette & GUI-in-Code Emulation 🎨

Native Math Input/Output in the Code Editor 🧮

Write beautiful equations directly within normal Wolfram Language expressions.

Math Input

🎹 No need to lift your fingers from the keyboard

Math Input

Editable Output Cells & Advanced Shortcuts

  • Alt+2, Cmd+2: Toggle input cell visibility
  • Ctrl+/: Create a fraction from selection
  • Ctrl+6: Create superscript from selection
  • Ctrl+2: Create square root from selection
  • Ctrl+-: Create subscript from selection

Or use toolboxes for complex structures like integrals, summations, and Greek letters.

Rich Command Palette

Command Palette

Integrate Your Favorite JavaScript Libraries

Extend your data visualization capabilities with JavaScript integrations.

JS Libraries

Share Interactive Notes Effortlessly

  • Write once, use forever
  • No breaking changes upon updates
  • Keep all dependencies within your notebook
  • No CDNs, no external libraries, no WRI services

Export to HTML/Markdown/MDX 🗜️

Export entire notebooks as standalone .html files, retaining all embedded data—no internet required for viewing.

HTML Export

Installation 🛠️

Wolfram Engine

Download Wolfram Engine (Version 13.3+ recommended). Activation is required after installation.

macOS Installation via Homebrew:

brew install --cask wolfram-engine

WLJS Notebook App ✨

Download from the releases section.

Normal vs Offline Version

  • The offline version includes fixed versions of modules, documentation, and examples.
  • The normal version fetches the latest updates from GitHub upon installation.

CLI Installation

WLJS Notebook provides a CLI tool. You can open a folder in WLJS Notebook with:

wljs .

URL Protocol Registration

WLJS Notebook registers the wljs-message URL protocol, allowing you to open published notebooks directly from web pages.

Windows Installation

Use the .exe installer from the releases page.

GNU/Linux Installation

Using deb Package

sudo apt install ./wljs-notebook.deb

For Ubuntu 24.04, disable AppArmor restrictions:

sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0

Technology Stack

Languages: Wolfram Language, HTML, CSS, JavaScript, C

License

GNU GPLv3