Frontend Demo — Local
In demo mode, YAPTIDE runs entirely in the browser. Geant4 is compiled to WebAssembly and executes locally — no backend, no login, no internet connection needed after the initial load.
When to use this setup
Section titled “When to use this setup”| Scenario | Recommended setup |
|---|---|
| Frontend / Geant4 in-browser only | This page |
| Full stack with SHIELD-HIT12A or FLUKA | Local Celery |
| Full stack with SLURM cluster | Local SLURM |
Prerequisites
Section titled “Prerequisites”- Node.js 20+ with npm
- Python 3.9+ with pip and venv — needed to build the converter into a Pyodide/WebAssembly module
- Git
Clone the frontend repo:
git clone https://github.com/yaptide/ui.gitNavigate to the ui directory:
cd uiPull the converter submodule. The converter is a standalone Python package that translates the editor’s JSON project format into native input files for simulation engines:
git submodule update --init --recursiveInstall frontend dependencies:
npm installStart demo mode
Section titled “Start demo mode”npm run start-demoOpen http://localhost:3000/web_dev.
You get the full editor experience — geometry, beam, scoring, input file generation — plus Geant4 WebAssembly for in-browser simulation. No login required.
Production build
Section titled “Production build”npm run build-demoOutput goes to build/.
Useful commands
Section titled “Useful commands”| Command | Description |
|---|---|
npm run start-demo | Demo mode (no backend) |
npm run build-demo | Production build with demo mode |
npm run format | Run code formatter |
npm run test | Run tests in watch mode |