Extreme Speed
The Neo.mjs architecture leverages web workers to run application logic, data processing, and even parts of the rendering pipeline in parallel, on separate CPU cores. This offloads heavy computations from the main thread, ensuring the UI remains responsive.
By contrast, most other JavaScript frameworks operate predominantly within a single main thread. This means all business logic, data handling, and DOM rendering compete for the same CPU resources, often leading to a "janky" or unresponsive user interface during intensive operations.
This multi-threaded approach allows Neo.mjs applications to run and render significantly faster. This is particularly beneficial for processor- and data-intensive applications, as well as those requiring rapid UI updates. In internal testing, Neo.mjs applications have consistently demonstrated the ability to easily apply over 20,000 DOM updates per second without compromising user experience.
Should your application demand even greater parallel processing power, Neo.mjs provides the flexibility to launch additional web worker threads to handle specialized logic or further distribute computational load.
Example
Take a look at this example. It's the Neo.component.Helix component. Besides looking cool, it illustrates how quickly Neo.mjs can update a complex user interface.
Click on Preview, then use your mouse or trackpad to pan and zoom — the helix zooms and spirals accordingly, very very rapidly. If you move quickly, you might reach 20,000 or 30,000 delta updates per second. We've seen some examples that go over 40,000 updates per second — but we've never actually hit the limit.
If you're interested, there's a more full-featured helix example that includes showing delta updates, along with some other control. Look at the upper-right corner to see delta updates.