Open-source licences
This viewer uses the following open-source components. They are shipped unmodified, as separate files.
Components of the calculation on this computer ↓
occt-import-js 0.0.23 (GNU LGPL 2.1)
Reads STEP files in your browser. It is a WebAssembly build of Open CASCADE Technology.
- Source code: github.com/kovacsv/occt-import-js (release 0.0.23)
- Licence text: license.occt-import-js.txt
- Files:
vendor/occt/occt-import-js.jsandvendor/occt/occt-import-js.wasm, loaded as separate files. You may replace them with your own build of the library.
Open CASCADE Technology (GNU LGPL 2.1 with an additional exception)
The CAD kernel inside occt-import-js.
- Source code: github.com/Open-Cascade-SAS/OCCT (the version bundled by occt-import-js 0.0.23)
- Licence text: license.occt.txt
three.js 0.170.0 (MIT)
- Source code: github.com/mrdoob/three.js
- Licence text: LICENSE
three-mesh-bvh 0.8.3 (MIT)
- Source code: github.com/gkjohnson/three-mesh-bvh
- Licence text: LICENSE
The calculation on this computer
When you press Analyze, the whole calculation runs in your browser, on your computer (nothing is uploaded).
For that the page downloads the following components once (about 43 MB, then cached). They are loaded as separate,
unmodified files from vendor/pyodide/314.0.6/ (pinned by SHA-256 in src/compute/runtime.json)
and can be replaced by your own builds. Licence texts are in licenses/; where they come from is
listed in SOURCES.json.
Pyodide 314.0.6 (Mozilla Public License 2.0)
Python compiled to WebAssembly: runs the analysis engine's Python code in the browser.
- Source code: github.com/pyodide/pyodide (tag 314.0.6)
- Licence text: pyodide-LICENSE.txt (MPL-2.0, also MPL-2.0.txt)
- Files:
pyodide.mjs,pyodide.asm.mjs,pyodide.asm.wasm,python_stdlib.zip
CPython 3.14.2 and its standard library (PSF License)
- Source code: github.com/python/cpython (tag v3.14.2)
- Licence text: cpython-3.14-LICENSE.txt
Netgen / NGSolve core 6.2.2606 (GNU LGPL 2.1)
Splits the part into tetrahedra (the mesh). Build for Pyodide 314.0.6 by the NGSolve team
(libngcore.zip, libnglib.zip, pyngcore.zip, netgen.zip; separate WebAssembly side modules loaded at run time, replaceable).
- Source code: github.com/NGSolve/netgen (6.2.2606); the exact binaries and build: ngsolve.org/files/ngsolve_pyodide_314.0.6.tar.bz2 (2026-09-02, SHA-256 in
runtime.json), build recipe github.com/NGSolve/ngsolve (Pyodide build scripts) - Licence text: netgen-LICENSE.txt (also LGPL-2.1.txt)
- Written offer: on request we provide the corresponding source of these LGPL components as shipped here (contact Profile Equipment B.V.).
Open CASCADE Technology 7.9.3 (GNU LGPL 2.1 with the Open CASCADE exception)
Reads the STEP file for the mesh (statically inside libnglib.zip).
- Source code: github.com/Open-Cascade-SAS/OCCT (tag V7_9_3)
- Licence texts: LICENSE_LGPL_21.txt, OCCT_LGPL_EXCEPTION.txt
METIS 5 (Apache License 2.0)
Graph partitioning, statically inside libnglib.zip.
- Source code: github.com/KarypisLab/METIS
- Licence text: metis-LICENSE.txt, Apache-2.0.txt
zlib (zlib License)
Compression, statically inside libnglib.zip.
- Source code: github.com/madler/zlib
- Licence text: zlib-LICENSE.txt
NumPy 2.4.6 and SciPy 1.18.0 (BSD 3-Clause, with bundled BSD/MIT parts)
- Source code: github.com/numpy/numpy (v2.4.6), github.com/scipy/scipy (v1.18.0)
- Licence texts: NumPy, SciPy (the wheels also carry the licences of their bundled parts)
jsonschema 4.26.0 and its dependencies (MIT; typing-extensions: PSF License)
Checks the material profiles and the calculation request.
This viewer and its analysis engine (GNU AGPL 3.0 or later)
The JavaScript solver (src/compute/) and the engine's Python code (vendor/stepfem-engine/, unpacked in your browser) are part of this program, © Profile Equipment B.V., AGPL-3.0-or-later.
The files served by this site are the source of the browser part.
When the site is opened with a calculation server configured (developers only), that server uses Gmsh, CalculiX and scikit-fem; they are not delivered to your browser.