Made for scientists by scientists
Written for the freeware Wolfram Engine using JavaScript and WLX
Recommended Wolfram Engine: 13.3 or higher
Special thanks to @KirillBelovTest (Wolfram Language HTTP Stack developer)
To help maintain this project:
- GitHub Sponsors
- PayPal Thank you ๐บ
It supports dynamics, GUI building blocks, and powerful Mathematica syntax out of the box.
No more static graphics! Each primitive of Graphics
/Graphics3D
was recreated from scratch using d3.js
and THREE.js
libraries. Most native plotting functions of Mathematica are supported.
We deeply integrated ChatGPT, so that AI can have a read/write acccess to your notebook
Write beautiful equations between lines of normal Wolfram Language expressions.
An entire notebook can be exported to a standalone .html
file keeping all data inside. No internet dependency, no additional software is required for viewing a notebook
Later, once opened using WLJS Notebook application, it is unpacked back to a normal editable format.
Make a presentation right from the notebook.
Follows the mouse pointer and performs complex calculations.
WLJS Notebook runs locally and belongs to you (no cloud-based stuff involved). No internet connection is needed.
The idea is to implement a minimalistic but easily extendable open-source notebook interface with syntax sugar, interactive objects for the freeware Wolfram Engine.
There is no aim to fully copy Mathematica (it will never be possible), however, there are a few things that can be improved:
- Stability and speed
- Independence from WRI
- Portability (not PDF) - easy to share your work with someone outside the ecosystem keeping your graphics interactive or embedded on a website
- Event-based approach to dynamics - allow users to build complex dynamic notebooks and to have clear control over all moving parts
- Natural bridge between other languages - HTML as markup, WL for computations, and JS for stunning visuals
If you encounter difficulties installing Wolfram Engine locally or running this project on your machine, you can directly run it in the cloud as follows.
On this github webpage, press ,
to create a Codespace. After initialization, execute the following command.
# It will install the wolfram engine automatically
sudo ./engine_installer
# After the installation(it will take a while), you need to request an On-Demand License. Please refer to the specific steps at the following link: https://hub.docker.com/r/wolframresearch/wolframengine#activate-ondemand
# Finally you will get an entitlement ID
export WOLFRAMSCRIPT_ENTITLEMENTID=<Your entitlement ID>
# Then execute
wolframscript -f Scripts/start.wls host 0.0.0.0 http 8080 ws 8081 ws2 8082 docs 8085
The freeware Wolfram Engine is required (Version 13.3 is preferable).
Download from the releases section.
Clone this repository and run:
wolframscript -f Scripts/start.wls
or on a specific hostname
wolframscript -f Scripts/start.wls host 0.0.0.0 http 8080 ws 8081 ws2 8082 docs 8085
that will open an HTTP server on 8080
port with 8081
, 8082
used for realtime communication and docs pages at 8085
The frontend uses its own package/plugin system. It doesn't require any software installed except wolframscript. Precompiled plugins are downloaded using URLFetch from GitHub repositories and imported to the system.
@MitsuhaMiyamizu ๐ค
Wolfram Language, JavaScript
- Wolfram Mathematica
- Jupyter Notebook
- Observable
- Wolfram Language Notebook VSCode
- Mathics
GNU GPLv3