Bitbybit's Open Source Approach: What's Shared and Why
At Bitbybit, we believe in the power of open source and community collaboration. However, to sustain and grow the platform, some components remain proprietary. This page aims to clearly explain our approach so you know exactly what you can access, modify, and contribute to.
Our Guiding Principle: All source code in our main Bitbybit GitHub Monorepo is open source (MIT). Documentation text is CC BY 4.0. Logos, trademarks, and media assets are not open-source — see CONTENT-LICENSE.md for the full breakdown.
What IS Open Source in Bitbybit?
We are committed to open-sourcing the foundational elements that empower developers and designers. This primarily includes:
-
Core Logic & Geometry Libraries (NPM Packages):
- The powerful algorithms and utility functions that form the backbone of Bitbybit's capabilities. These are available as NPM packages (like
@bitbybit-dev/base,@bitbybit-dev/occt,@bitbybit-dev/babylonjs,@bitbybit-dev/threejsetc.) for you to use in your own projects. - If you're familiar with the
bitbybitJavaScript namespace used in our editors, the following modules (and their sub-modules) are open source:bitbybit.drawbitbybit.babylon,bitbybit.threeandbitbybit.playcanvasbitbybit.vectorbitbybit.pointbitbybit.linebitbybit.polylinebitbybit.meshbitbybit.logicbitbybit.mathbitbybit.listsbitbybit.colorbitbybit.textbitbybit.datesbitbybit.jsonbitbybit.csvbitbybit.verb(deprecated - removed in the next major version)bitbybit.tagbitbybit.timebitbybit.occtbitbybit.manifoldbitbybit.jscadbitbybit.ifcbitbybit.framebitbybit.asset
bitbybit.occtruns on the Bitbybit OCCT Kernel, built on OCCT, that@bitbybit-dev/occtships. The package is MIT-licensed, the kernel included, and its TypeScript is open source; the kernel's own C++ layer is closed source (see below).
- The powerful algorithms and utility functions that form the backbone of Bitbybit's capabilities. These are available as NPM packages (like
-
Official Documentation:
- The Docusaurus site source code (
docs/src/, config files, scripts) is MIT licensed. - The written documentation text (Markdown in
docs/learn/,docs/api/,docs/blog/) is licensed under CC BY 4.0 — you can share and adapt it with attribution. - However, logos, trademarks, and media assets (images in
docs/static/img/, blog post images) are not covered by any open-source or permissive license. Bitbybit logos are trademarks of Bit by bit developers, and client/partner logos remain the property of their respective owners. See CONTENT-LICENSE.md for full details. - We encourage contributions to improve documentation clarity and add examples!
- The Docusaurus site source code (
-
Application Examples:
- We provide example projects and snippets demonstrating how to use our MIT-licensed NPM packages. The source code in
examples/is MIT licensed. - Note: examples may link to or reference assets (such as the Bitbybit logo) that are not themselves open-source.
- We provide example projects and snippets demonstrating how to use our MIT-licensed NPM packages. The source code in
-
Language/Localization Files:
- All files in
languages/are MIT licensed.
- All files in
The TypeScript of all the core building blocks - the mathematical and geometric libraries, and fundamental utilities - is available for you to inspect, use, and even contribute to via our main GitHub monorepo. Every @bitbybit-dev package is MIT-licensed; the one part whose source is closed is the C++ layer of the Bitbybit OCCT Kernel. Documentation text is freely shareable under CC BY 4.0. Logos and trademarks are not open-source — see our CONTENT-LICENSE.md for the full breakdown.
What is NOT Open Source (Proprietary Components)?
To support the development and hosting of the Bitbybit platform, certain components are proprietary and not open source. These include:
-
The Bitbybit.dev Platform & UI:
- The editors: The user interfaces and all related logic of the Rete, Blockly and TypeScript coding editors and of the Designer.
- Main Website & Cloud Infrastructure: The bitbybit.dev website, user account systems, cloud-based algorithms, and backend services.
-
Code Execution "Runners":
- While you can freely embed and use our "Runners" (the components that execute Bitbybit scripts) in your own websites, their internal source code is not public.
- We provide built versions of these Runners via the bitbybit-assets repository. The Runner bundle as a whole is governed by the proprietary Bitbybit Runner License - free to use, embed, and self-host (including commercially), but you cannot reverse-engineer, modify, or redistribute it as a standalone product. The open-source components it bundles or loads (BabylonJS, Three.js, PlayCanvas, JSCAD, Manifold, etc.) retain their own licenses, and the Bitbybit OCCT Kernel it loads is MIT-licensed, with OCCT inside it under its own license.
- These Runners enable the execution of some of our proprietary advanced algorithms (like certain 3D text/font features) free of charge within the context of the Runner, but the source code for those specific advanced algorithms will remain closed together with implementation details of Runners themselves.
-
Visual Editor to JavaScript Conversion Logic:
- The internal mechanisms that convert Rete JSON or Blockly XML into executable JavaScript are proprietary.
- You are, of course, free to use the JavaScript generated by our editors in your projects.
Scripts using features from our closed-source categories (bitbybit.things and bitbybit.advanced) will not run if you export them to your own website or use them outside of the Bitbybit platform. These advanced features are exclusive to our platform.
bitbybit.asset is open source, but a named asset is looked up in the store of the application running the script. On bitbybit.dev that is your project's assets, so asset.getFile finds them only there; elsewhere, fetch the file from a URL with asset.fetchFile.
- Specific Advanced Algorithm Namespaces:
- While our core libraries are open, certain higher-level and more complex algorithms are proprietary. In the
bitbybitJavaScript namespace, these include:- Everything under
bitbybit.advanced - Everything under
bitbybit.things
- Everything under
- Some algorithms within these proprietary namespaces might be executable for free for users of our editors on bitbybit.dev or via the Runners, but this does not mean their source code is open or freely available for all uses.
- While our core libraries are open, certain higher-level and more complex algorithms are proprietary. In the
Being able to use a feature (e.g., running a script with an advanced algorithm via our platform or a Runner) is different from having access to its source code.
- 3D Bits app for Shopify:
- This E-Commerce application is fully proprietary and is not shared as open-source project. It is meant to serve commercial B2B customers of Bit by bit developers company.
- There are no plans to open-source any part of this application such as Composer or other related tools.
The Bitbybit OCCT Kernel
The Bitbybit OCCT Kernel that @bitbybit-dev/occt ships (the bitbybit-dev-occt*.wasm files, also on our CDN) is WebAssembly compiled from OpenCASCADE Technology (LGPL v2.1 with the Open CASCADE exception) and our own C++ kernel layer, whose source is not published.
- The kernel is MIT-licensed, like the rest of the package: you may use, modify and redistribute it in any project, personal or commercial.
- It is closed source. A license applies to what is distributed, and we distribute the kernel as compiled WebAssembly only: the MIT License covers that file, and the C++ of our kernel layer is not published. Havok's WebAssembly build for Babylon.js is licensed the same way.
- OCCT inside it keeps its own license. To use a modified OCCT, you relink the kernel with the relinking kit we publish beside each of its builds; Runner Licensing says where to find it.
- Our most advanced algorithms run on CAD Cloud, on our servers.
Our Commitment to Transparency
We aim to be as transparent as possible about our open source model.
- The Rule of Thumb: If you can't find the source code within the main Bitbybit GitHub Monorepo, it's likely proprietary and part of our intellectual property. Every @bitbybit-dev package on NPM is MIT-licensed, and all of them are open source with one exception: the Bitbybit OCCT Kernel inside
@bitbybit-dev/occt, whose C++ layer is closed source. - Trademarks & Assets: Logos, brand assets, and third-party trademarks in the repository are not open-source, regardless of which directory they appear in. See CONTENT-LICENSE.md for specifics.
- Why This Model? This hybrid approach allows us to offer powerful core tools to the community while funding the ongoing development, maintenance, and innovation of the broader Bitbybit platform and its advanced features.
We appreciate your understanding and your engagement with both our open source contributions and the Bitbybit platform as a whole! If you have questions about specific components, feel free to reach out.