Napa.js is a multi-threaded JavaScript runtime built on V8, which was originally designed to develop highly iterative services with non-compromised performance in Bing. As it evolves, we find it useful to complement Node.js in CPU-bound tasks, with the capability of executing JavaScript in multiple V8 isolates and communicating between them. Napa.js is exposed as a Node.js module, while it can also be embedded in a host process without Node.js dependency. Multi-threaded JavaScript runtime. Node.js compatible module architecture with NPM support. API for object transportation, object sharing and synchronization across JavaScript threads. API for pluggable logging, metric and memory allocator. Distributed as a Node.js module, as well as supporting embed scenarios. Most of the time, there is no need to build Napa.js. When consuming Napa.js via npm install napajs, npm will first try to download the pre-build binaries for the current platform.

Features

  • In Napa.js, all works related to multi-threading are around the concept of Zone
  • A process may contain multiple zones, each consists of multiple JavaScript Workers
  • Run code that changes worker state on all workers, returning a promise for pending operation
  • Run code that doesn't change worker state on an arbitrary worker, returning a promise of getting the result
  • Both JavaScript modules and C++ modules are supported
  • Supports NPM, with the same way to create and publish modules

Project Samples

Project Activity

See All Activity >

Categories

Runtimes

License

MIT License

Follow Napa.js

Napa.js Web Site

Other Useful Business Software
Our Free Plans just got better! | Auth0 Icon
Our Free Plans just got better! | Auth0

With up to 25k MAUs and unlimited Okta connections, our Free Plan lets you focus on what you do best—building great apps.

You asked, we delivered! Auth0 is excited to expand our Free and Paid plans to include more options so you can focus on building, deploying, and scaling applications without having to worry about your security. Auth0 now, thank yourself later.
Try free now
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of Napa.js!

Additional Project Details

Operating Systems

Linux, Mac, Windows

Programming Language

C++

Related Categories

C++ Runtimes

Registered

2021-06-24