We don’t usually associate the browser with real computation. No one expects it to solve systems of equations, perform linear algebra with BLAS or LAPACK, or handle large-scale numerical operations — and yet, that’s exactly what it can do now. Using only JavaScript.
In this talk, I’ll show how we’re building a scientific computing ecosystem that runs directly in the browser — no Python, no servers, no installs. From ndarrays and ufuncs to statistical modeling and vectorized operations, we’re reconstructing the building blocks of modern computation on the world’s most accessible platform: the web.
This will be a demo-heavy talk. We'll walk through live use cases of scientific computing done entirely in the browser, including:
Training lightweight AI models in-browser
Running OCR using WebAssembly and JavaScript
Toxicity detection using in-browser NLP
Accessibility applications powered by local inference
Porting entire game engines to WebAssembly
Talk Flow:
Why compute in web browsers?
Accessibility: no installs, no configs, just a browser!
Privacy and security: data never leaves your device.
And some more factors.
Live Demos, as described above.
The Current State of Web-based Scientific Computing
What is Needed to Build a Scientific Computing Ecosystem on the Web?
Core primitives like ndarrays, broadcasting, and linear algebra
Statistical routines, distributions, and file utilities
Visualization and interactivity
Performance via SIMD, WebAssembly, and multithreading
How stdlib.js Meets These Needs
A modular, high-performance standard library for numerical computing in JavaScript
Covers statistics, linear algebra, distributions, complex numbers, and more
Designed for the browser and Node.js
Features That Make stdlib.js Powerful
Typed array support and n-dimensional data structures
BLAS-like operations in pure JavaScript
Extensive mathematical and statistical routines
WebAssembly Integration
When and why to use WebAssembly alongside JavaScript
Examples involving OCR, linear algebra, and inference engines
Discussion of performance gains from C-compiled modules
Benchmarks and Comparisons
Performance comparisons: stdlib.js vs math.js vs Pyodide
JavaScript vs C vs WebAssembly for numerical tasks
Plots and insights on performance trade-offs and optimizations
This talk encourages developers to rethink the browser’s role in computation-heavy tasks. By shifting scientific computing to the browser:
We unlock large-scale education without installation barriers
We make computation accessible on any device
We enable private, local-first, and responsive apps
We highlight the role of open source in democratizing scientific computing