/threlte

3D framework for Svelte

Primary LanguageSvelteMIT LicenseMIT

license discord docs

Rapidly Build Interactive 3D Apps for the Web

Threlte is a Svelte library that simplifies creating 3D apps for the web. It provides a declarative, type-safe, reactive and interactive API out-of-the-box.

Threlte's 3D rendering is powered by Three.js, and it also provides a physics engine through Rapier and an animation studio via Theatre.js; see packages for details.

Check out our documentation and our Discord community.

Quickstart

Installation

For a quick interactive setup of a fresh Threlte project, run:

npm create threlte my-project

Alternatively you can check out the full installation instructions.

Tutorial

To get a hang of the basics, we recommend following our introductory tutorial.

Support

Have questions? Feel free to ask in our Discord support forum.

Features

  • Clean API transparently exposing all Three.js objects through declarative API.

  • Hooks providing easy access to low-level contexts like animation frames and the rendering engine.

  • Plugins making it easy to extend Threlte with custom code and logic.

  • Events enabling robust and Svelte-native access to state transformations in your scenes.

  • Interactivity makes it easy to react to user inputs on 3D objects.

Packages

Threlte is comprised of six distinct packages to allow you to import only what you need:

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  • Filing Issues - if you have feature requestions or you think you spotted a bug, submit an issue.
  • Contributing Code - if you would like to drop us a PR, read the contribution guide first.

Sponsors

Powered by Vercel


License

The MIT License (MIT). Please see the License File for more information.