Skip to main content

Our NPM Packages

When developing standalone applications in TypeScript or JavaScript, you often use third-party libraries and frameworks. We've developed several open-source NPM packages (MIT Licensed) to help you integrate our powerful 3D CAD algorithms directly into your applications.

Architecture of NPM Packages

The following diagram illustrates the architecture of our NPM packages. Each game engine-specific package (@bitbybit-dev/threejs, @bitbybit-dev/babylonjs) connects through the @bitbybit-dev/core layer. This creates a streamlined, extensible structure that supports a range of integrations with various geometry kernels like OCCT, JSCAD, and Manifold.

Architecture of Bitbybit NPM packages Architecture of Bitbybit NPM packages

Available Packages

Here's a list of our core NPM packages. Each provides distinct functionalities for your 3D development needs.


Rendering & Integration Packages

These packages provide the bridge between our core geometry libraries and popular 3D rendering engines.

@bitbybit-dev/babylonjs

Allows users of the BabylonJS game engine to use our core 3D CAD algorithms. It helps you build 3D model configurators or other 3D applications by providing tools to construct meshes and groups from OpenCascade or JSCAD geometry kernels.

@bitbybit-dev/threejs

Enables users of the ThreeJS library to utilize our core 3D CAD algorithms. Similar to the BabylonJS package, it assists in building 3D applications by providing algorithms for constructing meshes from OpenCascade or JSCAD geometry.


Core & Kernel Packages

These packages form the foundation of our geometry processing capabilities.

@bitbybit-dev/core

Contains the core 3D algorithms of the Bitbybit platform. It's independent of UI and specific game engines but is designed for browser environments. This package integrates various 3D kernels (OCCT, JSCAD, Manifold) by leveraging our other specialized kernel packages.

@bitbybit-dev/occt-worker

Exposes core OpenCascade (OCCT) 3D algorithms via a Web Worker for browser environments. This package is independent of rendering frameworks, allowing you to build custom rendering pipelines (WebGL, WebGPU). For Node.js environments, consider the @bitbybit-dev/occt library.

@bitbybit-dev/occt

Contains core OpenCascade (OCCT) 3D algorithms. This package can be deployed in both browser and backend (Node.js) contexts, allowing you to build custom caching or Web Worker pipelines. It can potentially be used alongside other opencascade.js libraries.

@bitbybit-dev/jscad-worker

Exposes core JSCAD 3D algorithms via a Web Worker for browser environments. Independent of rendering frameworks. For Node.js environments, consider the @bitbybit-dev/jscad library.

@bitbybit-dev/jscad

Contains core JSCAD 3D algorithms. JSCAD is developed by an amazing community, which you can find here.

@bitbybit-dev/manifold-worker

Exposes core Manifold 3D algorithms via a Web Worker for browser environments. Independent of rendering frameworks. For Node.js environments, consider the @bitbybit-dev/manifold library.

@bitbybit-dev/manifold

Contains Manifold 3D algorithms. The Manifold geometry kernel was started by Emmet Lalish. Learn more about the Manifold 3D project here.

@bitbybit-dev/base

Contains foundational algorithms for the Bitbybit platform, used in all higher-level NPM packages. Includes utilities for vectors, math, text manipulation, and other basic operations.