Jump to content

Development/WASM

From The Document Foundation Wiki

Introduction

This page describes the port of LibreOffice to WebAssembly (aka WASM) using the Emscripten toolchain, currently targeting the Qt5 VCL backend. The goal is to cross-compile LibreOffice to run in the Browser, maybe with some native UI using LibreOfficeKit. Eventually we can target some WASI runtime or node.js in the future.

Current state

Work is now merged in master. feature/wasm will be removed, once the last two WIP patches are merged.

State: LibreOffice builds, vcldemo as well; both run in recent desktop browsers. Writer and Calc work (somewhat). Use --with-main-module=[writer|calc] to choose application during compile time.

If you want to help out or have questions, poke jmux or alg or thorsten on IRC (#libreoffice-dev).

Demo websites:

Newsflash:

  • feature/wasm now contains an in-browser headless pdf conversion demo commit

Setup, build and further information

Instead of keeping outdated info here, please check out the README.wasm.md.

For what's needed on the webserver / CI side, this redmine ticket holds some details: https://redmine.documentfoundation.org/issues/3545

Further resources