What is it?

pepper.js is a JavaScript library that enables the compilation of native Pepper applications into JavaScript using Emscripten. This allows the simultaneous deployment of native code on the web both as a Portable Native Client (PNaCl) executable and as JavaScript. Native Pepper applications can now be run in Chrome, Firefox, Internet Explorer, Safari, and more.

See it in action!

Why use it?

The ability to deploy a Pepper application using either PNaCl or Emscripten allows developers to capture the strengths of both. Native code compiled with Native Client runs close to the metal in Chrome and can use of pthreads when an extra performance boost is needed. Native code compiled with Emscripten runs with the performance and reach of modern JavaScript.

How do I get started?

pepper.js is available on GitHub. The pepper.js wiki is currently the best source of information for getting started. pepper.js is currently in alpha, so expect to get your hands dirty.


For questions about pepper.js or PNaCl, send a message to the native-client-discuss mailing list. For Emscripten-specific questions, send a message to the emscripten-discuss mailing list. If you're interested in contributing, contact @ncbray on GitHub.