Skip to content

Open-source licenses

Solid Vibes stands on the work of many open-source projects. Thank you to everyone who builds and maintains them. This page lists what ships in the web app, with its version and license.

405 packages · 12 license types · the list is generated from the dependency tree at each release

Notable components

The engine, fonts and icons that make the product what it is, including WebAssembly modules and native libraries that are not ordinary npm packages. Components under a weak copyleft license (LGPL) are used unmodified, as separate modules, and their source is public at the links.

  • The CAD kernel: solid modelling, booleans, fillets, STEP / IGES import and export. Runs in your browser and on our geometry service as WebAssembly (/wasm/replicad_single.wasm).

    Weak copyleft. Distributed unmodified as a separate WebAssembly module; the source is public at the link, and the build we use is the replicad-opencascadejs package (listed below).

  • The parametric modelling layer on top of OpenCascade.

  • Fast, robust mesh booleans (WebAssembly, /wasm/manifold.wasm).

  • 3D viewport rendering (with React Three Fiber and drei).

  • A sandbox for running recipe and plugin code safely.

  • Image processing for thumbnails and renders on our servers. Prebuilt library shipped inside the server image only, not sent to your browser.

    Weak copyleft. Used unmodified as a dynamically loaded shared library.

  • The icon set used across the interface.

  • Interface typeface. Bundled with the app (variable WOFF2, latin subset) and served from our own domain, not from Google.

    Files and licence text: packages/ui/fonts/ (obtained from the @fontsource-variable/plus-jakarta-sans package).

  • Handwritten accent typeface. Bundled with the app (variable WOFF2, latin subset) and served from our own domain, not from Google.

    Files and licence text: packages/ui/fonts/ (obtained from the @fontsource-variable/caveat package).

  • Code and numbers typeface. Bundled with the app (variable WOFF2, latin subset) and served from our own domain, not from Google.

    Files and licence text: packages/ui/fonts/ (obtained from the @fontsource-variable/jetbrains-mono package).

  • Lettering on technical drawings and PDF exports (/wasm/fonts/Geist-Regular.ttf).

LGPL-2.1-only · 1

Full text: LGPL-2.1-only on spdx.org. Weak copyleft: used unmodified.

PackageVersionAuthor
replicad-opencascadejs1.1.0Steve Genoud

MIT · 349

Full text: MIT on spdx.org.

PackageVersionAuthor
@anthropic-ai/sdk0.135.0Anthropic
@babel/runtime7.29.10The Babel Team
@codemirror/autocomplete6.20.3Marijn Haverbeke
@codemirror/commands6.11.1Marijn Haverbeke
@codemirror/lang-javascript6.2.5Marijn Haverbeke
@codemirror/language6.13.1Marijn Haverbeke
@codemirror/lint6.9.7Marijn Haverbeke
@codemirror/search6.7.2Marijn Haverbeke
@codemirror/state6.7.6Marijn Haverbeke
@codemirror/streamparser6.0.0Marijn Haverbeke
@codemirror/theme-one-dark6.1.3Marijn Haverbeke
@codemirror/view6.43.14Marijn Haverbeke
@floating-ui/core1.8.0atomiks
@floating-ui/dom1.8.0atomiks
@floating-ui/react-dom2.1.9atomiks
@floating-ui/utils0.2.12atomiks
@gltf-transform/core4.5.1Don McCurdy
@gltf-transform/extensions4.5.1Don McCurdy
@gltf-transform/functions4.5.1Don McCurdy
@img/colour1.1.0
@jitl/quickjs-ffi-types0.32.0Jake Teton-Landis
@jitl/quickjs-singlefile-browser-release-sync0.32.0Jake Teton-Landis
@jridgewell/gen-mapping0.3.13Justin Ridgewell
@jridgewell/resolve-uri3.1.2Justin Ridgewell
@jridgewell/sourcemap-codec1.6.0Justin Ridgewell
@jridgewell/trace-mapping0.3.31Justin Ridgewell
@jscadui/3mf-export0.5.0
@lezer/common1.5.3Marijn Haverbeke
@lezer/highlight1.2.5Marijn Haverbeke
@lezer/javascript1.5.6Marijn Haverbeke
@lezer/lr1.4.11Marijn Haverbeke
@marijn/find-cluster-break1.0.4Marijn Haverbeke
@monogrid/gainmap-js3.4.0MONOGRID
@next/env16.4.2Next.js Team
@nodable/entities3.1.0Amit Gupta
@pdf-lib/fontkit1.1.1Andrew Dillon
@pdf-lib/standard-fonts1.0.0Andrew Dillon
@pdf-lib/upng1.0.1photopea
@radix-ui/number1.1.3
@radix-ui/primitive1.2.0
@radix-ui/react-accessible-icon1.2.0
@radix-ui/react-accordion1.3.1
@radix-ui/react-alert-dialog1.2.1
@radix-ui/react-arrow1.1.17
@radix-ui/react-aspect-ratio1.2.0
@radix-ui/react-avatar1.3.1
@radix-ui/react-checkbox1.4.1
@radix-ui/react-collapsible1.2.1
@radix-ui/react-collection1.2.0
@radix-ui/react-compose-refs1.1.5
@radix-ui/react-context1.3.0
@radix-ui/react-context-menu2.4.1
@radix-ui/react-dialog1.3.1
@radix-ui/react-direction1.2.0
@radix-ui/react-dismissable-layer1.2.1
@radix-ui/react-dropdown-menu2.2.1
@radix-ui/react-focus-guards1.2.0
@radix-ui/react-focus-scope1.3.1
@radix-ui/react-form0.3.0
@radix-ui/react-hover-card1.2.1
@radix-ui/react-id1.1.4
@radix-ui/react-label2.1.17
@radix-ui/react-menu2.2.1
@radix-ui/react-menubar1.2.1
@radix-ui/react-navigation-menu1.4.1
@radix-ui/react-one-time-password-field0.2.1
@radix-ui/react-password-toggle-field0.2.1
@radix-ui/react-popover1.3.1
@radix-ui/react-popper1.4.0
@radix-ui/react-portal1.2.0
@radix-ui/react-presence1.1.11
@radix-ui/react-primitive2.2.0
@radix-ui/react-progress1.2.1
@radix-ui/react-radio-group1.5.1
@radix-ui/react-roving-focus1.2.1
@radix-ui/react-scroll-area1.4.0
@radix-ui/react-select2.4.1
@radix-ui/react-separator1.2.0
@radix-ui/react-slider1.6.1
@radix-ui/react-slot1.5.0
@radix-ui/react-switch1.4.1
@radix-ui/react-tabs1.2.1
@radix-ui/react-toast1.3.1
@radix-ui/react-toggle1.2.1
@radix-ui/react-toggle-group1.2.1
@radix-ui/react-toolbar1.2.1
@radix-ui/react-tooltip1.4.1
@radix-ui/react-use-callback-ref1.1.5
@radix-ui/react-use-controllable-state1.3.0
@radix-ui/react-use-effect-event0.0.5
@radix-ui/react-use-escape-keydown1.1.6
@radix-ui/react-use-is-hydrated0.1.3
@radix-ui/react-use-layout-effect1.1.4
@radix-ui/react-use-previous1.1.4
@radix-ui/react-use-rect1.1.4
@radix-ui/react-use-size1.1.5
@radix-ui/react-visually-hidden1.2.13
@radix-ui/rect1.1.3
@react-three/drei10.7.9
@react-three/fiber9.8.2Paul Henschel
@react-three/postprocessing3.2.0
@stablelib/base641.0.1Dmitry Chestnykh
@supabase/auth-js2.117.3Supabase
@supabase/functions-js2.117.3Supabase
@supabase/phoenix0.4.5Chris McCord
@supabase/postgrest-js2.117.3Supabase
@supabase/realtime-js2.117.3Supabase
@supabase/ssr0.12.7Supabase, Inc.
@supabase/storage-js2.117.3Supabase
@supabase/supabase-js2.117.3Supabase
@tweenjs/tween.js23.1.3tween.js contributors
@uiw/codemirror-extensions-basic-setup4.25.12kenny wong
@uiw/react-codemirror4.25.12kenny wong
@use-gesture/core10.3.1Paul Henschel
@use-gesture/react10.3.1Paul Henschel
acorn8.19.0
agent-base7.1.4Nathan Rajlich
any-promise1.3.0Kevin Beaty
anynum1.0.1Amit Gupta
aria-hidden1.2.6Anton Korzunov
bail2.0.2Titus Wormer
base64-js1.5.1T. Jameson Little
bidi-js1.1.0Jason Johnston
bignumber.js9.3.1Michael Mclaughlin
buffer6.0.3Feross Aboukhadijeh
camera-controls3.1.2Yomotsu
ccount2.0.1Titus Wormer
character-entities2.0.2Titus Wormer
character-entities-html42.1.0Titus Wormer
character-entities-legacy3.0.0Titus Wormer
character-reference-invalid2.0.1Titus Wormer
client-only0.0.1
clsx2.1.1Luke Edwards
cmdk1.1.1Paco
codemirror6.0.2Marijn Haverbeke
comma-separated-tokens2.0.3Titus Wormer
commander13.1.0TJ Holowaychuk
commander4.1.1TJ Holowaychuk
convert-source-map2.0.0Thorsten Lorenz
cookie1.1.1Roman Shtylman
crelt1.0.7Marijn Haverbeke
cross-env7.0.3Kent C. Dodds
cross-spawn7.0.6André Cruz
csstype3.2.3Fredrik Nicol
cwise-compiler1.1.3Mikola Lysenko
data-uri-to-buffer4.0.1Nathan Rajlich
debug4.4.3Josh Junon
decode-named-character-reference1.3.0Titus Wormer
dequal2.0.3Luke Edwards
detect-gpu5.0.70Tim van Scherpenzeel
detect-node-es1.1.0Ilya Kantor
devlop1.1.0Titus Wormer
esbuild-wasm0.27.7
escape-string-regexp5.0.0Sindre Sorhus
estree-util-is-identifier-name3.0.0Titus Wormer
extend3.0.2Stefan Thomas
fast-xml-builder1.3.1Amit Gupta
fast-xml-parser5.11.2Amit Gupta
fdir6.5.0thecodrr
fetch-blob3.2.0Jimmy Wärting
fflate0.6.11Arjun Barrett
fflate0.8.3Arjun Barrett
formdata-polyfill4.0.10Jimmy Wärting
framer-motion14.2.0Matt Perry
get-nonce1.0.1Anton Korzunov
glsl-noise0.0.0Ian McEwan, Ashima Arts, Stefan Gustavson
hast-util-heading-rank3.0.0Titus Wormer
hast-util-to-jsx-runtime2.3.6Titus Wormer
hast-util-to-string3.0.1Titus Wormer
hast-util-whitespace3.0.0Titus Wormer
html-url-attributes3.0.1Titus Wormer
https-proxy-agent7.0.6Nathan Rajlich
iceberg-js0.8.1mandarini
immediate3.0.6
immer11.1.21Michel Weststrate
inline-style-parser0.2.7
iota-array1.0.0Mikola Lysenko
is-alphabetical2.0.1Titus Wormer
is-alphanumerical2.0.1Titus Wormer
is-buffer1.1.6Feross Aboukhadijeh
is-decimal2.0.1Titus Wormer
is-hexadecimal2.0.1Titus Wormer
is-plain-obj4.1.0Sindre Sorhus
is-promise2.2.2ForbesLindesay
is-unsafe2.0.2Amit Gupta
its-fine2.1.1Cody Bennett
json-bigint1.0.0Andrey Sidorov
json-schema-to-ts3.1.1Thomas Aribart
jwa2.0.1Brian J. Brennan
jws4.0.1Brian J Brennan
ktx-parse1.1.0Don McCurdy
lenis1.3.26darkroom.engineering
lie3.3.0
lines-and-columns1.2.4Brian Donovan
longest-streak3.1.0Titus Wormer
maath0.10.8
magic-string0.30.21Rich Harris
markdown-table3.0.4Titus Wormer
mdast-util-find-and-replace3.0.3Titus Wormer
mdast-util-from-markdown2.1.0Titus Wormer
mdast-util-gfm3.1.0Titus Wormer
mdast-util-gfm-autolink-literal2.0.1Titus Wormer
mdast-util-gfm-footnote2.1.0Titus Wormer
mdast-util-gfm-strikethrough2.0.1Titus Wormer
mdast-util-gfm-table2.0.0Titus Wormer
mdast-util-gfm-task-list-item2.0.0Titus Wormer
mdast-util-mdx-expression2.0.1Titus Wormer
mdast-util-mdx-jsx3.2.0Titus Wormer
mdast-util-mdxjs-esm2.0.1Titus Wormer
mdast-util-phrasing4.1.0Victor Felder
mdast-util-to-hast13.2.1Titus Wormer
mdast-util-to-markdown2.2.0Titus Wormer
mdast-util-to-string4.0.0Titus Wormer
meshline3.3.1Jaume Sanchez
meshoptimizer1.1.1Arseny Kapoulkine
micromark4.0.3Titus Wormer
micromark-core-commonmark2.0.4Titus Wormer
micromark-extension-gfm3.0.0Titus Wormer
micromark-extension-gfm-autolink-literal2.1.0Titus Wormer
micromark-extension-gfm-footnote2.1.0Titus Wormer
micromark-extension-gfm-strikethrough2.1.0Titus Wormer
micromark-extension-gfm-table2.1.2Titus Wormer
micromark-extension-gfm-tagfilter2.0.0Titus Wormer
micromark-extension-gfm-task-list-item2.1.0Titus Wormer
micromark-factory-destination2.0.1Titus Wormer
micromark-factory-label2.0.1Titus Wormer
micromark-factory-space2.1.0Titus Wormer
micromark-factory-title2.0.1Titus Wormer
micromark-factory-whitespace2.0.1Titus Wormer
micromark-util-character2.1.1Titus Wormer
micromark-util-chunked2.0.1Titus Wormer
micromark-util-classify-character2.0.1Titus Wormer
micromark-util-combine-extensions2.0.1Titus Wormer
micromark-util-decode-numeric-character-reference2.0.2Titus Wormer
micromark-util-decode-string2.0.1Titus Wormer
micromark-util-edit-map1.0.0Titus Wormer
micromark-util-encode2.0.1Titus Wormer
micromark-util-html-tag-name2.0.1Titus Wormer
micromark-util-normalize-identifier2.0.1Titus Wormer
micromark-util-resolve-all2.0.1Titus Wormer
micromark-util-sanitize-uri2.0.1Titus Wormer
micromark-util-subtokenize2.1.0Titus Wormer
micromark-util-symbol2.0.1Titus Wormer
micromark-util-types2.0.3Titus Wormer
motion14.2.0Matt Perry
motion-dom14.2.0Matt Perry
motion-utils14.1.1Matt Perry
mp4-muxer5.2.2Vanilagy
ms2.1.3
mz2.7.0Jonathan Ong
nanoid3.3.20Andrey Sitnik
ndarray1.1.1Mikola Lysenko
ndarray-lanczos0.3.0Don McCurdy
ndarray-ops1.2.2Mikola Lysenko
ndarray-pixels5.2.0Don McCurdy
next16.4.2
node-domexception1.0.0Jimmy Wärting
node-fetch3.3.2David Frank
object-assign4.1.1Sindre Sorhus
opentype.js1.3.4Frederik De Bleser
p-retry4.6.2Sindre Sorhus
parse-entities4.0.2Titus Wormer
path-expression-matcher1.6.2Amit Gupta
path-key3.1.1Sindre Sorhus
pdf-lib1.17.1Andrew Dillon
picomatch4.0.7Jon Schlinkert
pirates4.0.7Ari Porad
postcss8.5.23Andrey Sitnik
property-graph4.1.0Don McCurdy
property-information7.2.0Titus Wormer
qrcode-generator2.0.4Kazuhiko Arase
quickjs-emscripten-core0.32.0Jake Teton-Landis
radix-ui1.8.1
react19.3.0
react-dom19.3.0
react-markdown10.1.0Espen Hovlandsdal
react-remove-scroll2.7.2Anton Korzunov
react-remove-scroll-bar2.3.8Anton Korzunov
react-style-singleton2.2.3Anton Korzunov
react-use-measure2.1.7Paul Henschel
rehype-slug6.0.0Titus Wormer
remark-gfm4.0.1Titus Wormer
remark-parse11.0.0Titus Wormer
remark-rehype11.1.2Titus Wormer
remark-stringify11.0.0Titus Wormer
replicad1.1.0Steve Genoud
require-from-string2.0.2Vsevolod Strukchinsky
retry0.13.1Tim Koschützki
safe-buffer5.2.1Feross Aboukhadijeh
scheduler0.28.0
server-only0.0.1
shebang-command2.0.0Kevin Mårtensson
shebang-regex3.0.0Sindre Sorhus
sonner2.0.8Emil Kowalski
space-separated-tokens2.0.2Titus Wormer
standardwebhooks1.1.1Standard Webhooks
stats-gl2.4.2Renaud ROHLINGER
stats.js0.17.0mrdoob
string.prototype.codepointat0.2.1Mathias Bynens
stringify-entities4.0.4Titus Wormer
strnum2.5.1Amit Gupta
style-mod4.1.4Marijn Haverbeke
style-to-js1.1.21Mark
style-to-object1.0.14Mark
styled-jsx5.1.6
sucrase3.35.1Alan Pierce
suspend-react0.1.3Paul Henschel
tailwind-merge3.7.0Dany Castillo
thenify3.3.1Jonathan Ong
thenify-all1.6.0Jonathan Ong
three0.186.1mrdoob
three-gpu-pathtracer0.0.27Garrett Johnson
three-mesh-bvh0.8.3Garrett Johnson
three-mesh-bvh0.9.16Garrett Johnson
three-stdlib2.36.1Paul Henschel
tiny-inflate1.0.3Devon Govett
tinyglobby0.2.17Superchupu
trim-lines3.0.1Titus Wormer
troika-three-text0.52.5Jason Johnston
troika-three-utils0.52.5Jason Johnston
troika-worker-utils0.52.0Jason Johnston
trough2.2.0Titus Wormer
ts-algebra2.0.0Thomas Aribart
tunnel-rat0.1.2Paul Henschel
undici-types7.24.6
unified11.0.5Titus Wormer
uniq1.0.1Mikola Lysenko
unist-util-is6.0.1Titus Wormer
unist-util-position5.0.0Titus Wormer
unist-util-stringify-position4.0.0Titus Wormer
unist-util-visit5.1.0Titus Wormer
unist-util-visit-parents6.0.2Titus Wormer
use-callback-ref1.3.3theKashey
use-sidecar1.1.3theKashey
use-sync-external-store1.7.0
utility-types3.11.0Piotr Witek
vfile6.0.3Titus Wormer
vfile-message4.0.3Titus Wormer
w3c-keyname2.2.8Marijn Haverbeke
web-streams-polyfill3.3.3Mattias Buelens
webgl-constants1.1.1Tim van Scherpenzeel
webgl-sdf-generator1.1.1Jason Johnston
ws8.22.0Einar Otto Stangvik
xatlas-web0.1.0Robert Long
xml-naming0.3.0Amit Gupta
zod4.6.7Colin McDonnell
zustand4.5.7Paul Henschel
zustand5.0.15Paul Henschel
zwitch2.0.4Titus Wormer

Apache-2.0 · 23

Full text: Apache-2.0 on spdx.org.

PackageVersionAuthor
@dimforge/rapier3d-compat0.12.0
@google/genai2.30.0
@mediapipe/tasks-vision0.10.17[email protected]
@opentelemetry/api1.9.1OpenTelemetry Authors
@paddle/paddle-js1.6.5Paddle.com Market Ltd.
@paddle/paddle-node-sdk3.10.0paddle.com
@swc/helpers0.5.23강동윤
baseline-browser-mapping2.11.28
class-variance-authority0.7.1Joe Bell
detect-libc2.1.2Lovell Fuller
draco3d1.5.7Google Draco Team
ecdsa-sig-formatter1.0.11D2L Corporation
gaxios7.3.1Google, LLC
gcp-metadata8.1.2Google LLC
google-auth-library10.9.1Google Inc.
google-logging-utils1.1.3Google API Authors
hls.js1.7.3
long5.3.2Daniel Wirtz
manifold-3d3.5.4
openai7.34.0OpenAI
promise-worker-transferable1.0.4Roman Viskin
sharp0.35.5Lovell Fuller
ts-interface-checker0.1.13Dmitry S, Grist Labs

BSD-3-Clause · 13

Full text: BSD-3-Clause on spdx.org.

PackageVersionAuthor
@protobufjs/aspromise1.1.2Daniel Wirtz
@protobufjs/base641.1.2Daniel Wirtz
@protobufjs/codegen2.0.5Daniel Wirtz
@protobufjs/eventemitter1.1.1Daniel Wirtz
@protobufjs/fetch1.1.1Daniel Wirtz
@protobufjs/float1.0.2Daniel Wirtz
@protobufjs/path1.1.2Daniel Wirtz
@protobufjs/pool1.1.0Daniel Wirtz
@protobufjs/utf81.1.2Daniel Wirtz
buffer-equal-constant-time1.0.1GoInstant Inc., a salesforce.com company
ieee7541.2.1Feross Aboukhadijeh
protobufjs7.6.6Daniel Wirtz
source-map-js1.2.2Valentin 7rulnik Semirulnik

ISC · 11

Full text: ISC on spdx.org.

PackageVersionAuthor
@ungap/structured-clone1.4.0Andrea Giammarchi
flatbush4.6.2Vladimir Agafonkin
flatqueue3.1.0Vladimir Agafonkin
github-slugger2.0.0Dan Flettre
isexe2.0.0Isaac Z. Schlueter
lucide-react1.57.0Eric Fennis
n8ao2.0.1
picocolors1.1.1Alexey Raspopov
potpack1.0.2Vladimir Agafonkin
semver7.8.5GitHub Inc.
which2.0.2Isaac Z. Schlueter

0BSD · 2

Full text: 0BSD on spdx.org.

PackageVersionAuthor
tslib1.14.1Microsoft Corp.
tslib2.8.1Microsoft Corp.

(MIT AND Zlib) · 1

PackageVersionAuthor
pako1.0.11

BSL-1.0 · 1

Full text: BSL-1.0 on spdx.org.

PackageVersionAuthor
clipper2-ts2.0.1-18Angus Johnson

CC-BY-4.0 · 1

Full text: CC-BY-4.0 on spdx.org.

PackageVersionAuthor
caniuse-lite1.0.30001816Ben Briggs

MIT-0 · 1

Full text: MIT-0 on spdx.org.

PackageVersionAuthor
nodemailer10.1.2Andris Reinman

Unlicense · 1

Full text: Unlicense on spdx.org.

PackageVersionAuthor
fast-sha2561.3.0Dmitry Chestnykh

Zlib · 1

Full text: Zlib on spdx.org.

PackageVersionAuthor
postprocessing6.39.5Raoul van Rüschen

Missing something, or need a source offer for a component above? Write to [email protected].