Automata LabDocumentation

Author, infer, visualize, host, and simulate deterministic state transducers in your browser.

Automata Lab Overview

Automata Lab is an experimental browser laboratory for deterministic, Moore-machine-inspired state transducers. A model contains states, events, reusable actions, ordered entry and exit actions, one initial state, and a partial deterministic transition function.

The application brings five activities into one project:

  • Editor provides structured forms, lists, action assignments, and a transition table.
  • Chart presents and edits the same model as a UML-style graph.
  • Solver infers a reviewable candidate from partial observations.
  • Server hosts an immutable project revision inside a dedicated browser worker.
  • Simulator runs event sequences against a session pinned to a hosted revision.

User Guide

The User Guide explains the model, application shell, authoring workflow, Chart, Solver, built-in server, Simulator, files, printing, settings, accessibility, diagnostics, and troubleshooting.

If this is your first visit, continue with Getting Started.

Developer Guide

The Developer Guide introduces the public repository, architecture, contracts, test strategy, build pipeline, documentation workflow, security boundaries, and contribution expectations.

Application Version and Documentation Scope

This documentation accompanies Automata Lab 1.6.0, built from the same source revision. This version adds terminal states, synchronized Editor/Chart controls, optional Simulator stopping, terminal CSV/report columns, and Solver replacement disclosure. It also clarifies Add/Edit dialog titles and printed table headings. Enable stopping in Application Settings; Start or Reset captures that preference. The JSON reader supports strict file versions 1.0.0 through 1.4.0; every canonical Save writes 1.4.0 with explicit terminal-state flags. Application version, file-format version, and model metadata version are separate values.

One current documentation set accompanies each deployment. It covers the static browser application and its built-in browser workers; a remote HTTP server adapter remains outside the implemented scope. Local source builds can include unreleased changes; see About Automata Lab for the application version and release notes.