-
Notifications
You must be signed in to change notification settings - Fork 0
Getting Started
This page gets you from zero to a running, simulating machine.
- Go to the latest release.
- Under Assets, download the installer for your platform:
-
Windows —
.msior.exe(NSIS) installer. -
macOS —
.dmg(universal/Apple‑Silicon depending on the build). -
Linux —
.AppImageor.deb.
-
Windows —
- Run the installer and launch AutomataLab.
Auto‑updates are supported from v1.0.2 onward. Newer versions download and install over the air, so you only need to install manually once. (Builds v1.0.0/v1.0.1 cannot self‑update and must be upgraded manually.)
The app is signed for updates but may not be notarized/code‑signed for the OS gatekeeper. If your OS warns about an unidentified developer, allow it via System Settings → Privacy & Security (macOS) or More info → Run anyway (Windows SmartScreen).
Prefer not to install anything? A web build runs at https://automata-lab-one.vercel.app. The simulation engine is identical to the desktop app; only native features (OS file dialogs, auto‑update) differ — in the browser, saving/loading uses file download/upload instead.
You need Node.js (LTS), npm, and the Rust toolchain plus the Tauri v2 prerequisites for your OS.
# Clone
git clone https://github.com/reeshavsinha/AutomataLab.git
cd AutomataLab
# Install JS dependencies
npm install
# Run the desktop app in dev mode (hot reload)
npm run tauri:dev
# …or run just the web frontend
npm run devUseful scripts:
| Command | What it does |
|---|---|
npm run tauri:dev |
Desktop app with hot reload |
npm run dev |
Web frontend only (Vite dev server) |
npm run build |
Type‑check (tsc) + production web build to dist/
|
npm run tauri:build |
Build native installers for the current OS |
npm test |
Run the unit test suite (Vitest) |
See Architecture for a tour of the codebase.
- Pick a machine type in the toolbar — leave it on DFA.
- Press
N(or the Add state tool in the left rail) to drop a state. Add a second one. - Mark the first state as start and the second as accept via right‑click → ... on each node.
- Hover a state until the connection dot appears, then drag to another state to create a transition. In the editor that pops up, type the symbol(s) it reads (e.g.
a). - Type an input string in the input bar at the bottom.
- Press Space to play, or
S/ → to step. Watch the active state light up; the status badge shows Accepted / Rejected when the input is consumed.
Next, read the User Guide for the full editor, or jump to Machine Types to learn the models.
AutomataLab v4.1.0 · Repository · Download · Web app · MIT License
Using the app
Machine models
Tools & data
Project