# OneNote reader for johnmcm.com The WebAssembly module behind johnmcm.com's OneNote viewer (/onenote-viewer). It is [one2html](https://github.com/msiemens/one2html) (MIT) and [onenote.rs](https://github.com/msiemens/onenote.rs) (MPL-2.0) by Markus Siemens, compiled for the browser without changes to their code. The Dockerfile clones both at fixed commits: - onenote.rs `fa4d7a044324af3bfe68727704a9789a08b36a3c` - one2html `59930ad309004030f812790c6749efe4265bb6bd` The only edit is to one2html's Cargo.toml, so it uses that same onenote.rs commit (it otherwise asks for 1.1 from crates.io and patches in git master, a patch Cargo ignores when one2html is a dependency). `src/lib.rs` is this site's: an in-memory file system implementing onenote.rs's `FileSystem` trait, and a few functions for the page to add files, run one2html's `convert`, and read the HTML back. `Cargo.lock` pins every other crate. Build with `build.ps1` (Docker Desktop must be running). The output goes to `frontend/vendor/local/onenote@1/`.