pmndrs / three-stdlib

πŸ“š Stand-alone library of threejs examples designed to run without transpilation in node & browser
https://npmjs.com/three-stdlib
MIT License
704 stars 117 forks source link
3d abstractions examples helpers threejs typescript

three-stdlib

Version Downloads Twitter Discord release

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

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

  1. Fork and clone the repo
  2. Run yarn install to install dependencies
  3. Create a branch for your PR with `git checkout -b pr-type/issue-number-your-branch-name beta
  4. 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: