three-stdlib VS drei

Compare three-stdlib vs drei and see what are their differences.

three-stdlib

📚 Stand-alone library of threejs examples designed to run without transpilation in node & browser (by pmndrs)

drei

🥉 useful helpers for react-three-fiber (by pmndrs)
SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
surveyjs.io
featured
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
three-stdlib drei
7 40
641 7,427
1.1% 2.6%
8.1 9.4
6 days ago 1 day ago
JavaScript JavaScript
MIT License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

three-stdlib

Posts with mentions or reviews of three-stdlib. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-05-19.
  • Arghhh ! Three !
    1 project | /r/threejs | 7 Dec 2023
    We have forked parts of the three core stuff to minimise breaks. drei for instance uses https://github.com/pmndrs/three-stdlib not examples/jsm. The threejs version you install can still pull the rug but pmndrs works against that with conditionals, shaders for instance are made to function despite three breaking stuff. You can generally rely on it and Fiber + eco system has semantic versioning.
  • React Three Fiber and NextJS Starter Template
    9 projects | dev.to | 19 May 2022
    React Three Fiber has been a fantastic way to quickly prototype 3D apps and games, and even efficient enough to carry them through to production. The problem? It’s can be a lot of setup. Just from that last paragraph, you see the string of dependencies R3F uses, and it gets even more complicated from there when you familiarize yourself with the current ThreeJS ecosystem (see: three-stdlib).
  • Resources for using Three.js with Nuxt
    1 project | /r/threejs | 22 Jan 2022
    three doesn't play well with node and node based environments. poimandres has been building out three's reach more and more, for instance https://github.com/pmndrs/three-stdlib this will all run under next/nuxt or whatever without workarounds.
  • Need help importing .gltf into a nextJS component.
    1 project | /r/threejs | 7 Jan 2022
    three is harder to use in next because it doesn't run under node. with three-fiber we have begun to fork some parts of it: https://github.com/pmndrs/three-stdlib that will make it easier to use it under next, even if you use "vanilla" three, stdlib's GLTFLoader will run fine whereas there/jsm won't (without workarounds). is there any reason why you would not want to use react for three though? you're using it for the dom already, r3f is the exact same thing as react-dom, a renderer, it doesn't wrap three.
  • How to build 3D scenes with React Three Fiber
    2 projects | news.ycombinator.com | 18 Nov 2021
    Same, the pmndrs folks at least pulled some of the examples stuff into https://github.com/pmndrs/three-stdlib which is ESM
  • Challenges of using Three.js and vue3+nuxt
    1 project | /r/threejs | 18 Sep 2021
    you can use the same tools that react users use because we face the same problems. for instance, next/nuxt are running under node, which doesn't understand what "import" means, so you'll not be able to use anything from three/examples/jsm/ (loaders, controls, etc). but we have made solutions for that. for instance https://github.com/pmndrs/three-stdlib generally there is lots on the poimandres github org that is equally valid for vanilla, react, vue and anything else.
  • Render Scene inside Nextjs [Help Wanted]
    1 project | /r/threejs | 2 Jul 2021
    don't mix three and react. take an hour to read through react-three-fiber docs and port it. you will be so much better off, 95% of that code will just vanish. poimandres also takes care of all the other parts, for instance three/examples/jsm/* is not node compatible, you can't easily use it in next. but there exists three-stdlib now and many other things that make your life easier.

drei

Posts with mentions or reviews of drei. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-29.
  • Show HN: 3D Framework for the Web. Built on Svelte and Three.js
    7 projects | news.ycombinator.com | 29 Apr 2024
    I have been using react-three-fiber and react-three-drei - the react version of this project. The examples are over whelming and wonderful

    https://docs.pmnd.rs/react-three-fiber/getting-started/examp...

    One of my favorites is the image gallery. I modified this so that clicking on an image take you into another room (gallery).

    https://github.com/pmndrs/drei is a collection of examples and helpers.

    Most impressive to me is the one using a GLTF model, video textures on text, reflections and more. A standalone version is

    https://bfplr.csb.app/

    But even more impressive is the sandbox showing the not-very-many-lines-of-code at

    https://codesandbox.io/p/sandbox/ground-reflections-and-vide...

    A lot to putting a layer on top of threejs and I have run a fair number of head scratchers. But still the potential is huge. Using threejs has completely changed the way I look at website development. So if you are a svelte person I would definitely look into this.

  • figured out an outline shader, heres the code (raymarching)
    1 project | /r/threejs | 11 Dec 2023
    the shader is here if you want it in vanilla https://github.com/pmndrs/drei/blob/master/src/core/Outlines.tsx though keep in mind it needs some additional work to support skeletons and instances, that's the code in the layout effect.
  • Cannot render glb file in frontend, instead it showing a black image
    1 project | /r/threejs | 6 Jul 2023
    the eco system gives you so much freedom, especially when it comes to properly align, display your models, and to make them look nice. there are dozens of components for staging, lighting, soft shadows, you would miss out on all of that https://github.com/pmndrs/drei
  • MeshPortalMaterial component from Drei is magic
    2 projects | /r/threejs | 30 Jun 2023
  • Open Source Project Ideas for Three.js?
    1 project | /r/threejs | 3 Apr 2023
    there are more pain points than can be enumerated. i think you should take a look here https://github.com/pmndrs/drei and pmndrs in general. also the eco system it has covered so far.
  • Suggestions needed
    3 projects | /r/threejs | 3 Apr 2023
    there's a whole eco system around three in react and next. it starts with react-three-fiber, drei has tons of helpers, and then there's three-next for when you need 100% lighthouse, persisting canvas across routes etc.
  • Best toolset for building a 3D Website?
    5 projects | /r/webdev | 9 Mar 2023
    Definitely ThreeJS and specifically React Three Fiber. React Three Fiber is an amazing wrapper around three that greatly reduces boilerplate. And because of how modular react is, the community has grown massively. With lots of helper components in the Drei library, and amazing examples in the author's Twitter. The Codesandbox is also a goldmine of example. And one of the best-produced courses by Bruno Simon to help you get started. He is the creator of this famous portfolio site.
  • Built a new splash page at the beginning of the year. Used the opportunity to experiment with react-three-fiber.
    3 projects | /r/webdev | 4 Mar 2023
    I picked the stack I did to expand upon my skill set. In particular, I wanted to brush up on react-three-fiber, react-spring & drei.
  • How to achieve these controls?
    2 projects | /r/threejs | 26 Feb 2023
  • Library for orbit controls in React Native
    1 project | /r/threejs | 22 Feb 2023
    what's the advantage of your version over this one by the developer who created react-three/fiber? https://github.com/pmndrs/drei/blob/master/src/core/OrbitControls.tsx I use the above by importing react-three/drei and it then works just like the one in your example

What are some alternatives?

When comparing three-stdlib and drei you can also consider the following projects:

drei - 🌭 useful helpers for react-three-fiber [Moved to: https://github.com/pmndrs/drei]

react-three-fiber - 🇨🇭 A React renderer for Three.js

jeelizFaceFilter - Javascript/WebGL lightweight face tracking library designed for augmented reality webcam filters. Features : multiple faces detection, rotation, mouth opening. Various integration examples are provided (Three.js, Babylon.js, FaceSwap, Canvas2D, CSS3D...).

three-mesh-bvh - A BVH implementation to speed up raycasting and enable spatial queries against three.js meshes.

leva - 🌋 React-first components GUI

threlte - A three.js component library for Svelte. [Moved to: https://github.com/threlte/threlte]

A-Frame - :a: Web framework for building virtual reality experiences.

react-three-arjs - AR.js with react-three-fiber

stackgl - A node.js-style module system for GLSL! :sparkles:

gltfjsx - 🎮 Turns GLTFs into JSX components

voxel-editor - A voxel editor in the browser.

react-postprocessing - 📬 postprocessing for react-three-fiber