I have moved the chemical network editor I made for Windows and the Mac to both Linux and the Web. This was a rewrite using Rust and egui for the UI. This tool can be used to create a layout for SBML model. Such layouts are stored in the SBML itself using the standard layout extension. A number of tools can render such SBML, such as COPASI or the Python package SBMLNetwork and SBMLDiagrams. cy2sbml and EscherConverter can also read these files.
To try it out, go to the website:
https://sys-bio.github.io/PathwayDesigner-rs/
Summary of capabilities:
To host it on another site, simply copy all the files to the other site; instructions are given at the end in the readme.md. There are no dependencies; the app is pure Rust. For the web deployment, the code is compiled to WASM.
Source code and releases can be found at
https://github.com/sys-bio/PathwayDesigner-rs
Draw reactions A → B, A + B → C, A → B + C, A + B → C + D, with stoichiometry (future versions will generalize to any number of reactants and species)A variety of reaction renderings, such as straight lines and Bézier curves, plus an optional centered junction point for uniuni reactions.
Alisa nodes are supported, useful for species such as ATP where there may exist multiple places on the network, alias nodes avoid unnecessary clutter.
Full undo and redo
Colors, and line thickness can be set. These can only be stored in the native json format. Although SBML also has a render extension, this is a very complex standard which is difficult to implement.
Basic autolayout is provided. This is useful for SBML models that have no layout.
Models in the form of Antimony can also be input. Currently, only basic Antimony syntax is supported. A future version will have full Antimony support.
Networks can be exported as SVG, PNG, or PDF.
Update: 10/12/2026
Version 0.1.1 fixes some minor annoyances, but significantly adds the ability to draw circular pathways. To use, select the species you want in a circle, right-click and select Alignment -> Arrange in Circle. The example below was made from the default network that is loaded at startup:

