- link old editor https://neuralcoder3.github.io/
- redirect from https://neuralcoder3.github.io/
The editor should be intuitive and easy to use.
- Add a new node
- named nodes
- have a unique start node
- multiple edges between nodes (or separated labels)
- named labels
- custom nodes
- mark nodes as final (double border)
- good looking double outline
- select nodes, edges
- move nodes
- add edges
- delete nodes, edges
- save/load automata
- extract simple datastructure
- zoom
- pan
- Graphviz
- LaTeX (Tikz)
- JSON
- Text (5-Tuple)
- Url
- Image
- SVG
- Table (for Turing)
- RegEx
- Grammar
- Save to perma link
- Save to local storage
- Save to file
- Save to server
- Import from all
- Step through automata (highlight current node and position in word)
- Word input
- list of words (marked intended rejections) => bulk judge
- NFA simulation
- Turing simulation
- PDA simulation
- Regex to automata
- Automata to regex
- Minize automata
- NFA to DFA (power automaton)
- Check equivalence (as import)
- compute equivalence classes (myhill-nerode) (as export)
- Regex labels
- Check for power automaton (epsilons)
- Check for regex labels
- Minimize
((01(0|1)*)|((0|1)*01))
automaton => wrong - refactor
- modularize
To install the packages, you might need to use npm i --legacy-peer-deps
.
The theory is abstracted in src/GraphUtils.tsx
and src/interfaces.tsx
.
- DFA Simulator
- GoJS
- Draw.io
- Graphviz
- TODO: other tested graph tools