SDEverywhere

SDEverywhere translates System Dynamics models from Vensim to C, WebAssembly, and HTML5 websites

View on GitHub

SDEverywhere is a Vensim to C transpiler that handles a broad range of System Dynamics models. It supports some advanced features of Vensim Modeling Language, including subscripts, subranges, and subscript mapping. The Vensim model is converted to human-readable C code.

Using SDEverywhere, you can deploy interactive System Dynamics models in mobile, desktop, and web apps for policymakers and the general public. Or you could perform model analysis using general-purpose languages, running the model as high-performance C code.

Additionally, SDEverywhere supports converting the C code into WebAssembly. This allows Vensim models to run in compatible JavaScript environments like Chrome, Safari, Firefox, and Node.js. The performant, portable WebAssembly can be embedded into customer user interfaces such as websites and Electron. For examples, please see Climate Interactive's En-ROADS and C-ROADS simulators.

If you're hoping for a relatively simple way to put a Vensim model on the web, SDEverywhere can help you there too. SDEverywhere has a basic templating system allowing the the definition of graphs and sliders. After editing text configuration files, SDEverywhere converts the Vensim model, reads the web config files, and generates a static website that can be easily hosted on any server.

sdCloud logo
Run SDEverywhere in the cloud at sdCloud.

SDEverywhere is released under the MIT License.