# Third-party notices — CAD kernel

This software makes use of facilities provided by Open CASCADE Technology.

The browser CAD kernel is `occt-wasm` 3.4.0, with Open CASCADE Technology 8.0.0 compiled to WebAssembly. The TypeScript wrapper/build tooling is offered upstream under MIT OR Apache-2.0; this notice supplies the complete MIT license (Copyright (c) 2026 Andy Mai). The compiled OCCT library is distributed under GNU LGPL version 2.1, with the Open CASCADE exception version 1.0. The exception is specific to material incorporated from library headers; it is not a blanket exemption for distributing the compiled library.

## License texts

- [occt-wasm tooling — MIT](occt-wasm-3.4.0-LICENSE-MIT.txt)
- [Open CASCADE Technology — LGPL 2.1](OCCT-8.0.0-LICENSE-LGPL-2.1.txt)
- [Open CASCADE exception 1.0](OCCT-LGPL-EXCEPTION.txt)
- [RapidJSON 1.1.0 notices](rapidjson-1.1.0-license.txt)
- [Emscripten 5.0.3 notices](emscripten-5.0.3-LICENSE.txt)
- [musl libc notices](musl-COPYRIGHT.txt)
- [compiler-rt notices](compiler-rt-LICENSE.txt)
- [libc++ notices](libcxx-LICENSE.txt)
- [libc++abi notices](libcxxabi-LICENSE.txt)
- [libunwind notices](libunwind-LICENSE.txt)

All copyright and disclaimer statements are retained in these complete upstream texts. RapidJSON's full notice also describes components that are not necessarily part of this binary: the pinned build fetches only its include/ headers, not bin/jsonchecker. Runtime-license copies are conservatively included from the pinned Emscripten source; this is not a complete link-level dependency audit.

## Source and build information

- [occt-wasm source, exact release commit](https://github.com/andymai/occt-wasm/tree/97efdd5481de7cf5c70ba9729076afeae4fd07fd) ([archive](https://github.com/andymai/occt-wasm/archive/97efdd5481de7cf5c70ba9729076afeae4fd07fd.tar.gz)).
- [OCCT source, exact fork/submodule commit](https://github.com/andymai/OCCT/tree/77aef4a6b51a981c0ae4485628a24f02cc410404) ([archive](https://github.com/andymai/OCCT/archive/77aef4a6b51a981c0ae4485628a24f02cc410404.tar.gz)). The wrapper archive alone does not contain this submodule.
- [Build script](https://github.com/andymai/occt-wasm/blob/97efdd5481de7cf5c70ba9729076afeae4fd07fd/xtask/src/build.rs), [builder definition](https://github.com/andymai/occt-wasm/blob/97efdd5481de7cf5c70ba9729076afeae4fd07fd/Dockerfile.builder), and [release build workflow](https://github.com/andymai/occt-wasm/blob/97efdd5481de7cf5c70ba9729076afeae4fd07fd/.github/workflows/build-wasm.yml).
- [Emscripten 5.0.3 source](https://github.com/emscripten-core/emscripten/tree/5.0.3) and [RapidJSON 1.1.0 source](https://github.com/Tencent/rapidjson/tree/v1.1.0).

File origins, exact license SHA-256 values, and the installed WASM identity are in [SOURCES.json](SOURCES.json). These upstream links identify source; this notice does not itself assert that a publisher-hosted corresponding-source offer has been completed.

## Replacement and deployment boundary

The upstream loader supports `OcctKernel.init({ wasm: replacementBytesOrUrl })`, including ArrayBuffer/Uint8Array input. A compatible modified/rebuilt library can be supplied through that API. This notice does not claim the surrounding application's browser UI exposes this option or that a replacement binary has been tested. The application distributor must provide and verify its applicable source/replacement arrangements before relying on them for LGPL distribution. Keep the OCCT LGPL/exception notices accessible with the application; do not label the complete WASM binary MIT-only.

This is a technical provenance notice, not legal advice or a compliance certification. License texts govern.
