14 March 2023 Update: Cheerp 3.0 released and relicensed to Apache 2.0 licence! Release notes here.
Do you have a high-performance application or library written in C/C++ that you would like to make available to a wider audience by turning into a Web App?
However, with Cheerp, existing code bases, including libraries and full applications, can be ported automatically to HTML5, saving you time and money.
What is Cheerp?
Cheerp is the most advanced and flexible solution to bring C++ code to the Web. It is based on the industry-standard Clang/LLVM stack, and provides a robust workflow with sensible defaults, clear error messages and gcc-like command-line options that allow for an easy integration in IDEs and continuous integration environments.
Cheerp runs on Windows, macOS and Linux, making it possible for C++ developers to create Web Applications in a seamless manner on their system of choice.
What can you do with Cheerp?
Cheerp is a powerful, flexible and robust tool, which can be used in multiple ways:
Convert existing C++ application to Web applications: Cheerp can recompile any large scale C++ application into an HTML5 web application, allowing you to provide your users with a modern, cloud integrated user experience with minimal interventions on the core business logic.
Compile C++ libraries to WebAssembly, and integrate them into HTML5 applications: as a general rule, if you have a problem, there is a C/C++ library (either open source or proprietary) that will solve it. Thanks to the advanced interoperability features of Cheerp, compiling and integrating a C/C++ library into an HTML5 web app could not be more straightforward.
Compile native C++ games to HTML5: Cheerp allows you to quickly port your C++ game to the web, with no code rewriting. Modern web browsers are powerful gaming platforms, including 3D graphics (through WebGL), programmable sound pipeline (through WebAudio) and motion sensors (accelerometers and GPS). You can use Cheerp to convert full games or to offer a playable teaser trailer or demo that can be started with a single click.
How Cheerp Works
The intended workflow of Cheerp usually looks like this:
- You go through the codebase, and tag the relevant APIs that you need exported to HTML5;
- You serve the .js and .wasm files on an HTTP server, alongside the rest of your HTML5 application, all to be executed by the browser client-side;
- If you need to change or add functionality to the component, you edit the C/C++ source;
- Go back to step 3: compile your code, serve it, and iterate.
Cheerp produces WebAssembly code that is often faster and smaller in size, then Emscripten, while retaining more flexibility in accessing the DOM and WebAPIs and libraries thanks to its advanced interoperability features.
Tested on millions of lines of code, chosen by many commercial products, Cheerp is the best technology to enable complex, large-scale applications to be converted to a Web application.
For more information on how Cheerp can help your organization to leverage your existing C++ code to develop HTML5 web applications that work on any device, with no need for plug-ins or download, please get in touch.