discopt in the browser

Write a model, solve it — both in this tab. Pyodide supplies CPython compiled to WebAssembly, and discopt itself is built for emscripten: the modeling API, the Rust branch-and-bound core and the in-house simplex, the same import discopt.modeling as dm you would write locally. The dropdown holds one model of each problem class — LP, MILP, QP, MIQP, NLP, MINLP — so you can see what the solver does with each. No server, no install, nothing uploaded.

starting…

Model

Edit freely — the editor is CodeMirror and Ctrl/⌘-Enter runs. The first run downloads Pyodide and the discopt wheel (tens of MB, cached by the browser afterwards); the time reported below excludes it and is the solve alone. Cancel kills the worker outright, because a solve holds the thread.

Output