GitHub - earthtojake/implicit.js: A library for modelling 3D objects with mathematical primitives · GitHub
/" data-turbo-transient="true" />
Skip to content
Search or jump to...
Search code, repositories, users, issues, pull requests...
-->
Search
Clear
Search syntax tips
Provide feedback
--><br>We read every piece of feedback, and take your input very seriously.
Include my email address so I can be contacted
Cancel
Submit feedback
Saved searches
Use saved searches to filter your results more quickly
-->
Name
Query
To see all available qualifiers, see our documentation.
Cancel
Create saved search
Sign in
/;ref_cta:Sign up;ref_loc:header logged out"}"<br>Sign up
Appearance settings
Resetting focus
You signed in with another tab or window. Reload to refresh your session.<br>You signed out in another tab or window. Reload to refresh your session.<br>You switched accounts on another tab or window. Reload to refresh your session.
Dismiss alert
{{ message }}
earthtojake
implicit.js
Public
Notifications<br>You must be signed in to change notification settings
Fork
Star
main
BranchesTags
Go to file
CodeOpen more actions menu
Folders and files<br>NameNameLast commit message<br>Last commit date<br>Latest commit
History<br>5 Commits<br>5 Commits
app
app
docs
docs
package
package
python
python
.editorconfig
.editorconfig
.gitattributes
.gitattributes
.gitignore
.gitignore
LICENSE
LICENSE
README.md
README.md
View all files
Repository files navigation
implicit.js
Package | Model format | API | CLI | @earthtojake
Browser-native implicit CAD for JavaScript apps.
implicit.js turns small .implicit.js model files into interactive WebGL<br>previews, screenshots, GIFs, and exportable meshes. Bring your own editor,<br>catalog, storage, and product flow; implicit.js handles the model runtime,<br>shader renderer, SDF sampling, snapshots, and STL/3MF/GLB exports.
Why
Implicit CAD is a nice fit for parametric parts, mathematical surfaces,<br>agent-generated geometry, procedural art, lattices, and browser tools that need<br>real 3D output without a heavyweight CAD kernel.
With implicit.js, a model is just an ES module with a signed distance function:
params.radius + 4,<br>glsl: `<br>float sdf(vec3 p) {<br>return implicit_sphere(p, vec3(0.0), radius);<br>};">export default {<br>schema: "implicit.js/0.1.0",<br>name: "rounded orb",<br>units: "mm",<br>params: {<br>radius: { type: "number", min: 8, max: 50, default: 24, unit: "mm" }<br>},<br>bounds: ({ params }) => params.radius + 4,<br>glsl: `<br>float sdf(vec3 p) {<br>return implicit_sphere(p, vec3(0.0), radius);<br>};
What You Get
Load .implicit.js and .implicit.mjs modules in modern ESM runtimes.
Render models with Three.js and WebGL raymarching.
Expose number, boolean, color, enum, string, and button parameters.
Generate PNG snapshots and orbit/animation GIFs in a headless browser.
Sample meshes from SDFs and export STL, 3MF, and GLB files.
Export animated GLB files from model animation definitions.
Analyze generated mesh quality before handing files to another tool.
Install
npm install implicitjs
The package is UI-framework agnostic. It works well inside React, plain browser<br>apps, local agent tools, and Node-based export pipelines.
Demo App
The app/ folder contains a small Vite playground with a code editor, live<br>preview, parameter controls, examples, snapshots, and exports. It is a demo of<br>the package, not a required part of the runtime.
cd app<br>npm install<br>npm run dev
Open the local URL Vite prints.
Reference
Doc<br>What it covers
Model format<br>The .implicit.js schema, parameters, bounds, GLSL, color, render settings, and animations.
API<br>Public imports for loading, rendering, snapshots, mesh sampling, exports, and quality checks.
CLI<br>Snapshot and export commands for local files and render jobs.
Development<br>Repository layout, local commands, and contribution notes.
License
MIT. See LICENSE.
About
A library for modelling 3D objects with mathematical primitives
implicit-js.vercel.app
Resources
Readme
License
MIT license
Uh oh!
There was an error while loading. Please reload this page.
Activity
Stars
stars
Watchers
watching
Forks
forks
Report repository
Releases
No releases published
Packages
Uh oh!
There was an error while loading. Please reload this page.
Contributors
Uh oh!
There was an error while loading. Please reload this page.
Languages
JavaScript<br>89.0%
Python<br>6.3%
CSS<br>4.4%
HTML<br>0.3%
You can’t perform that action at this time.