blob: 1535a0604f9a322f9b1ce6a704fc9d22b11b9373 [file] [edit]
<img alt="./_static/Emscripten_logo_full.png" src="_static/Emscripten_logo_full.png">
<h3>Emscripten is a complete compiler toolchain to WebAssembly, using LLVM, with a special focus on speed, size, and the Web platform.</h3>
<div class="container" style="width:100%;margin-bottom:10px;">
<div class="one-third-container" style="width:32%; display:inline-block;">
<div class="signpost" style="display:inline-block; vertical-align:text-top; margin-left:5px;margin-right:5px;">
<div class="signpost-heading" style="font-size:2em; font-style:bold; margin-bottom:10px;">Porting</div>
<div class="signpost-body" style=""><p>Compile your existing projects written in C or C++ &mdash; or any language that uses <a href="http://llvm.org/">LLVM</a> &mdash; to browsers, <a href="https://nodejs.org/">Node.js</a>, or <a href="https://v8.dev/blog/emscripten-standalone-wasm#running-in-wasm-runtimes">wasm runtimes</a>.</p></div>
</div>
</div>
<div class="one-third-container" style="width:32%; display:inline-block; font-style:bold;">
<div class="signpost" style="display:inline-block; vertical-align:text-top; margin-left:5px;margin-right:5px;">
<div class="signpost-heading" style="font-size:2em; font-style:bold; margin-bottom:10px;">APIs</div>
<div class="signpost-body" style=""><p>Emscripten converts OpenGL into WebGL, and has support for familiar APIs like SDL, pthreads, and POSIX, as well as Web APIs and JavaScript.</p></div>
</div>
</div>
<div class="one-third-container" style="width:32%; display:inline-block; font-style:bold;">
<div class="signpost" style="display:inline-block; vertical-align:text-top; margin-left:5px; margin-right:5px;">
<div class="signpost-heading" style="font-size:2em; font-style:bold; margin-bottom:10px;">Fast</div>
<div class="signpost-body" style=""><p>Thanks to the combination of LLVM, Emscripten, <a href="https://github.com/WebAssembly/binaryen">Binaryen</a>, and <a href="http://webassembly.org/">WebAssembly</a>, the output is compact and runs at near-native speed.</p></div>
</div>
</div>
</div>
<div style="margin-left: auto; margin-right: auto; text-align: center; margin-bottom: 10px; padding: 20px 20px 1px; background-color: rgb(217, 240, 180);background-image:linear-gradient(to bottom,rgba(0,0,0,0),rgba(0,0,0,0.15));box-shadow:3px 3px 5px gray;">
<p style="font-size:1.5em;">Interested to learn more? Read our <a href="./docs/introducing_emscripten/about_emscripten.html">About Page</a>!</p>
</div>
<br>
<div style="margin-left: auto; margin-right: auto; text-align: center; margin-bottom: 10px; padding: 20px 20px 1px; background-color: rgb(217, 240, 127);background-image:linear-gradient(to bottom,rgba(0,0,0,0),rgba(0,0,0,0.15));box-shadow:3px 3px 5px gray;">
<p style="font-size:1.5em;">Ready to get started? <a href="./docs/getting_started/downloads.html">Download and install the SDK</a> and then proceed to the <a href="./docs/getting_started/Tutorial.html">Tutorial</a>!</p>
</div>
<br>