Skip to main content
Version: 0.2

Introduction

EXEPERT is a browser-based brain research visualizer. It renders a live neural-network simulation over a low-poly brain mesh: the mesh vertices become neurons, nearby neurons are wired together with curved axons, and animated signal particles travel across those connections. A surrounding dashboard turns the running simulation into research-style telemetry: a cortical response index, per-region activation, and rolling activity windows: and lets you inject stimulus from uploaded images or video.

What's under the hood

EXEPERT is two cooperating layers:

  • A Rust simulation core compiled to WebAssembly (rust/brain_sim). It owns all the state: neurons, axons, the signal pool, and the telemetry math.
  • A TypeScript + Three.js front end (src/) that renders the simulation and hosts the UI. The Three.js geometry buffers point straight into the WASM linear memory, so each frame is read without copying.

The renderer is a classic Three.js WebGLRenderer (WebGL2) driving GLSL ShaderMaterial shaders. The simulation advances on the CPU each frame via the WASM World.step_cpu(dt) call.

Historical design docs

The repository's Plans/ folder and the root README.md describe earlier designs: a Grunt/WebGL1 stack and a later WebGPU + TSL compute path. The shipped code reverted to the classic WebGL2 + CPU approach described above (referred to in the source comments as "Path B"). This documentation describes the code as it currently runs; treat Plans/ as history.

How these docs are organized

  • Getting Started: prerequisites, installation, the dev loop, and builds.
  • Architecture: how the TypeScript app and the WASM core fit together, the boot sequence, and the rendering pipeline.
  • Simulation Core: the Rust World: neuron/axon generation, the signal pool, cortical regions, stimulus, and the telemetry contract.
  • Frontend Modules: a reference for the modules under src/.
  • Diagnostics Logger: the in-app log capture and viewer.
  • UI Guide: the on-screen controls and panels.
  • Development: project layout, testing, CI, and the reference pages.

If you just want to see it running, jump to Installation and Development.