three-stdlib

esm cjs
stand-alone library of threejs examples
Keywords
threetypescriptexampleshelpersabstractions3d
INSTALL
Type:
Version:
- Static
- Latest Patch
- Latest Minor
- Latest Major
- 2.36.0
- 2.35.16
- 2.35.15
- 2.35.14
- 2.35.13
- 2.35.12
- 2.35.11
- 2.35.10
- 2.35.9
- 2.35.8
- 2.35.7
- 2.35.6
- 2.35.5
- 2.35.4
- 2.35.3
- 2.35.2
- 2.35.1
- 2.35.0
- 2.34.1
- 2.34.0
- 2.33.0
- 2.32.2
- 2.32.1
- 2.32.0
- 2.31.0
- 2.30.5
- 2.30.4
- 2.30.3
- 2.30.2
- 2.30.1
- 2.30.0
- 2.29.12
- 2.29.11
- 2.29.10
- 2.29.9
- 2.29.8
- 2.29.7
- 2.29.6
- 2.29.5
- 2.29.4
- 2.29.3
- 2.29.2
- 2.29.1
- 2.29.0
- 2.28.12
- 2.28.11
- 2.28.10
- 2.28.9
- 2.28.8
- 2.28.7
- 2.28.6
- 2.28.5
- 2.28.4
- 2.28.3
- 2.28.2
- 2.28.1
- 2.28.0
- 2.27.3
- 2.27.2
- 2.27.1
- 2.27.0
- 2.26.13
- 2.26.12
- 2.26.11
- 2.26.10
- 2.26.9
- 2.26.8
- 2.26.7
- 2.26.6
- 2.26.5
- 2.26.4
- 2.26.3
- 2.26.2
- 2.26.1
- 2.26.0
- 2.25.1
- 2.25.0
- 2.24.2
- 2.24.1
- 2.24.0
- 2.23.15
- 2.23.14
- 2.23.13
- 2.23.12
- 2.23.11
- 2.23.10
- 2.23.9
- 2.23.8
- 2.23.7
- 2.23.6
- 2.23.5
- 2.23.4
- 2.23.3
- 2.23.2
- 2.23.1
- 2.23.0
- 2.22.10
- 2.22.9
- 2.22.8
- 2.22.7
- 2.22.6
- 2.22.5
- 2.22.4
- 2.22.3
- 2.22.2
- 2.22.1
- 2.22.0
- 2.21.12
- 2.21.11
- 2.21.10
- 2.21.9
- 2.21.8
- 2.21.7
- 2.21.6
- 2.21.5
- 2.21.4
- 2.21.3
- 2.21.2
- 2.21.1
- 2.21.0
- 2.20.5
- 2.20.4
- 2.20.3
- 2.20.2
- 2.20.1
- 2.20.0
- 2.19.1
- 2.19.0
- 2.18.1
- 2.18.0
- 2.17.4
- 2.17.3
- 2.17.2
- 2.17.1
- 2.17.0
- 2.16.2
- 2.16.1
- 2.16.0
- 2.15.2
- 2.15.1
- 2.15.0
- 2.14.3
- 2.14.2
- 2.14.1
- 2.14.0
- 2.13.1
- 2.13.0
- 2.12.1
- 2.12.0
- 2.11.1
- 2.11.0
- 2.10.3
- 2.10.2
- 2.10.1
- 2.10.0
- 2.9.1
- 2.9.0
- 2.8.12
- 2.8.11
- 2.8.10
- 2.8.9
- 2.8.8
- 2.8.7
- 2.8.6
- 2.8.5
- 2.8.4
- 2.8.3
- 2.8.2
- 2.8.1
- 2.8.0
- 2.7.2
- 2.7.1
- 2.7.0
- 2.6.4
- 2.6.3
- 2.6.2
- 2.6.1
- 2.6.0
- 2.5.11
- 2.5.10
- 2.5.9
- 2.5.8
- 2.5.7
- 2.5.6
- 2.5.5
- 2.5.4
- 2.5.3
- 2.5.2
- 2.5.1
- 2.5.0
- 2.4.2
- 2.4.1
- 2.4.0
- 2.3.1
- 2.3.0
- 2.2.0
- 2.1.0
- 2.0.8
- 2.0.7
- 2.0.6
- 2.0.5
- 2.0.4
- 2.0.3
- 2.0.2
- 2.0.1
- 2.0.0
- 1.2.4
- 1.2.3
- 1.2.2
- 1.2.1
- 1.2.0
- 1.1.4
- 1.1.3
- 1.1.2
- 1.1.1
- 1.1.0
- 1.0.2
- 1.0.1
- 1.0.0
- 0.1.1
- 0.1.0
- 0.0.15
- 0.0.14
- 0.0.13
- 0.0.12
- 0.0.11
- 0.0.10
- 0.0.9
- 0.0.7
- 0.0.6
- 0.0.5
- 0.0.4
- 0.0.3
- 0.0.2
- 0.0.1
- 0.0.0
- 2.0.1-beta.1
- 2.0.0-beta.1
- 1.2.4-beta.1
- 1.2.3-beta.4
- 1.2.3-beta.3
- 1.2.3-beta.2
- 1.2.3-beta.1
- 1.1.0-alpha.2
- 1.1.0-alpha.1
- 1.0.2-alpha.6
- 1.0.2-alpha.5
- 1.0.2-alpha.4
- 1.0.2-alpha.3
- 1.0.2-alpha.2
- 1.0.2-alpha.1
- 1.0.1-alpha.3
- 1.0.1-alpha.2
- 1.0.1-alpha.1
- 1.0.0-beta.2
- 1.0.0-beta.1
<script type="module"> import threeStdlib from 'https://cdn.jsdelivr.net/npm/three-stdlib@2.36.0/+esm' </script>
three-stdlib
Stand-alone version of threejs/examples/jsm written in Typescript & built for ESM & CJS.
Basic usage
npm install three-stdlib
// Export collection
import * as STDLIB from 'three-stdlib'
// Flatbundle
import { OrbitControls, ... } from 'three-stdlib'
Problem
three/examples
are usually regarded as something that you copy/paste into your project and adapt to your needs. That's not how people use it, and this has caused numerous issues in the past.
Solution
- A build system for ESM and CJS, compatible with browser, workers, and Node
- Class based, optimized for tree-shaking, no globals, exports instead of collections
- Typesafety with simple annotation-like types
- SemVer and NPM managed dependencies
But most importantly, allowing more people that use and rely on these primitives to hold a little stake, and to share the weight of maintaining it.
How to Contribute
- Fork and clone the repo
- Run
yarn install
to install dependencies - Create a branch for your PR with `git checkout -b pr-type/issue-number-your-branch-name beta
- Let's get cooking! 👨🏻🍳🥓
Commit Guidelines
Be sure your commit messages follow this specification: https://conventionalcommits.org/en/v1.0.0-beta.4
Publishing
We use semantic-release-action
to deploy the package. Because of this only certain commits will trigger the action of creating a release:
chore
will not release a new versionfix:
will create a0.0.x
versionfeat:
will create a0.x.0
versionBREAKING CHANGE:
will create ax.0.0
version