## Ecosystem
There is a vibrant and extensive ecosystem around three-fiber, full of libraries, helpers and abstractions.
- [`@react-three/drei`](https://github.com/pmndrs/drei) – useful helpers, this is an ecosystem in itself
- [`@react-three/gltfjsx`](https://github.com/pmndrs/gltfjsx) – turns GLTFs into JSX components
- [`@react-three/postprocessing`](https://github.com/pmndrs/react-postprocessing) – post-processing effects
- [`@react-three/test-renderer`](https://github.com/pmndrs/react-three-fiber/tree/master/packages/test-renderer) – for unit tests in node
- [`@react-three/flex`](https://github.com/pmndrs/react-three-flex) – flexbox for react-three-fiber
- [`@react-three/xr`](https://github.com/pmndrs/react-xr) – VR/AR controllers and events
- [`@react-three/csg`](https://github.com/pmndrs/react-three-csg) – constructive solid geometry
- [`@react-three/rapier`](https://github.com/pmndrs/react-three-rapier) – 3D physics using Rapier
- [`@react-three/cannon`](https://github.com/pmndrs/use-cannon) – 3D physics using Cannon
- [`@react-three/p2`](https://github.com/pmndrs/use-p2) – 2D physics using P2
- [`@react-three/a11y`](https://github.com/pmndrs/react-three-a11y) – real a11y for your scene
- [`@react-three/gpu-pathtracer`](https://github.com/pmndrs/react-three-gpu-pathtracer) – realistic path tracing
- [`create-r3f-app next`](https://github.com/pmndrs/react-three-next) – nextjs starter
- [`lamina`](https://github.com/pmndrs/lamina) – layer based shader materials
- [`zustand`](https://github.com/pmndrs/zustand) – flux based state management
- [`jotai`](https://github.com/pmndrs/jotai) – atoms based state management
- [`valtio`](https://github.com/pmndrs/valtio) – proxy based state management
- [`react-spring`](https://github.com/pmndrs/react-spring) – a spring-physics-based animation library
- [`framer-motion-3d`](https://www.framer.com/docs/three-introduction/) – framer motion, a popular animation library
- [`use-gesture`](https://github.com/pmndrs/react-use-gesture) – mouse/touch gestures
- [`leva`](https://github.com/pmndrs/leva) – create GUI controls in seconds
- [`maath`](https://github.com/pmndrs/maath) – a kitchen sink for math helpers
- [`miniplex`](https://github.com/hmans/miniplex) – ECS (entity management system)
- [`composer-suite`](https://github.com/hmans/composer-suite) – composing shaders, particles, effects and game mechanics
## How to contribute
If you like this project, please consider helping out. All contributions are welcome as well as donations to [Opencollective](https://opencollective.com/react-three-fiber), or in crypto `BTC: 36fuguTPxGCNnYZSRdgdh6Ea94brCAjMbH`, `ETH: 0x6E3f79Ea1d0dcedeb33D3fC6c34d2B1f156F2682`.
## Backers
Thank you to all our backers! 🙏
[](https://pmndrs.github.io/examples/shopping) -- selection, tiltshift
[](https://pmndrs.github.io/examples/cards-with-border-radius) -- border-radius
[](https://pmndrs.github.io/examples/threejs-journey-lv-1-fisheye) -- bruno, simon, threejs-journey, fisheye
[](https://pmndrs.github.io/examples/lusion-connectors) -- lusion, n8ao
[](https://pmndrs.github.io/examples/ecctrl-fisheye) -- ecctrl, character-controller
[](https://pmndrs.github.io/examples/monitors) -- effects, bloom, dof, reflections
[](https://pmndrs.github.io/examples/flying-bananas) -- effects, dof, bananas
[](https://pmndrs.github.io/examples/t-shirt-configurator) -- configurator, t-shirt, soft-shadows
[](https://pmndrs.github.io/examples/caustics) -- caustics, effects, soft-shadows
[](https://pmndrs.github.io/examples/ssgi-spheres-with-rapier-physics) -- ssgi, rapier
[](https://pmndrs.github.io/examples/thunder-clouds) -- clouds
[](https://pmndrs.github.io/examples/motionpathcontrols) -- motion-path, clouds
[](https://pmndrs.github.io/examples/room-with-soft-shadows) -- caustics, effects, soft-shadows
[](https://pmndrs.github.io/examples/volumetric-light-godray) -- godrays, reflections
[](https://pmndrs.github.io/examples/enter-portals) -- portals
[](https://pmndrs.github.io/examples/pass-through-portals) -- portals
[](https://pmndrs.github.io/examples/magic-box) -- portals
[](https://pmndrs.github.io/examples/video-cookies) -- video, cookies, caustics
[](https://pmndrs.github.io/examples/glass-flower) -- glass, transmission, bloom
[](https://pmndrs.github.io/examples/cards) -- cards, image
[](https://pmndrs.github.io/examples/image-gallery) -- reflections, annotations
[](https://pmndrs.github.io/examples/horizontal-tiles) -- scroll, controls
[](https://pmndrs.github.io/examples/bestservedbold-christmas-baubles) -- physics
[](https://pmndrs.github.io/examples/the-three-graces) -- html, annotations
[](https://pmndrs.github.io/examples/frosted-glass) -- frosted, glass, transmission
[](https://pmndrs.github.io/examples/gltfjsx-400kb-drone) -- gltfjsx, effects, bloom, soft-shadows
[](https://pmndrs.github.io/examples/starwars) -- effects, reflections, ssr, bloom
[](https://pmndrs.github.io/examples/bruno-simons-20k-challenge) -- rapier, physics, soft-shadows
[](https://pmndrs.github.io/examples/scrollcontrols-and-lens-refraction) -- scroll, refraction, lens
[](https://pmndrs.github.io/examples/building-dynamic-envmaps) -- effects, bloom, reflections
[](https://pmndrs.github.io/examples/nextjs-prism) -- effects, bloom
[](https://pmndrs.github.io/examples/building-live-envmaps) -- custom, environments
[](https://pmndrs.github.io/examples/shoe-configurator) -- gltfjsx, configurator
[](https://pmndrs.github.io/examples/audio-analyser) -- audio, analyser
[](https://pmndrs.github.io/examples/ground-reflections-and-video-textures) -- ground, reflections, video-texture
[](https://pmndrs.github.io/examples/threejs-journey-portal) -- bruno-simon, threejs-journey
[](https://pmndrs.github.io/examples/mixing-html-and-webgl-w-occlusion) -- html, iframe
[](https://pmndrs.github.io/examples/interactive-spline-scene-live-html) -- splinetool, iframe
[](https://pmndrs.github.io/examples/diamond-refraction) -- refraction
[](https://pmndrs.github.io/examples/diamond-ring) -- refraction, instanced
[](https://pmndrs.github.io/examples/envmap-ground-projection) -- ground-projected-env
[](https://pmndrs.github.io/examples/spline-glass-shapes) -- splinetool, transmission
[](https://pmndrs.github.io/examples/csg-bunny-usegroups) -- transmission, csg
[](https://pmndrs.github.io/examples/csg-house) -- csg
[](https://pmndrs.github.io/examples/gltf-animations-tied-to-scroll) -- scroll, animation, effects, tiltshift
[](https://pmndrs.github.io/examples/object-clump) -- physics, effects, n8ao
[](https://pmndrs.github.io/examples/html-input-fields) -- html, input
[](https://pmndrs.github.io/examples/useintersect-and-scrollcontrols) -- scroll
[](https://pmndrs.github.io/examples/infinite-scroll) -- scroll
[](https://pmndrs.github.io/examples/scrollcontrols-with-minimap) -- scroll
[](https://pmndrs.github.io/examples/instanced-particles-effects) -- effects, particles
[](https://pmndrs.github.io/examples/dbismut-furniture) -- cross-fade, transitions
[](https://pmndrs.github.io/examples/portal-shapes) -- transmission, portals, physics
[](https://pmndrs.github.io/examples/aquarium) -- transmission, portals
[](https://pmndrs.github.io/examples/portals) -- portals, blend
[](https://pmndrs.github.io/examples/inter-epoxy-resin)
[](https://pmndrs.github.io/examples/stage-presets-gltfjsx)
[](https://pmndrs.github.io/examples/react-ellipsecurve)
[](https://pmndrs.github.io/examples/iridescent-decals)
[](https://pmndrs.github.io/examples/baking-soft-shadows)
[](https://pmndrs.github.io/examples/ssr-test)
[](https://pmndrs.github.io/examples/csg-operations-rapier-physics)
[](https://pmndrs.github.io/examples/faucets-select-highlight)
[](https://pmndrs.github.io/examples/rapier-physics)
[](https://pmndrs.github.io/examples/bloom-hdr-workflow-gltf)
[](https://pmndrs.github.io/examples/ground-projected-envmaps-lamina)
[](https://pmndrs.github.io/examples/basic-ballpit)
[](https://pmndrs.github.io/examples/backdrop-and-cables)
[](https://pmndrs.github.io/examples/clones)
[](https://pmndrs.github.io/examples/lamina-1x)
[](https://pmndrs.github.io/examples/react-pp-outlines)
[](https://pmndrs.github.io/examples/gatsby-stars)
[](https://pmndrs.github.io/examples/pmndrs-vercel)
[](https://pmndrs.github.io/examples/sport-hall)
[](https://pmndrs.github.io/examples/night-train)
[](https://pmndrs.github.io/examples/bouncy-watch)
[](https://pmndrs.github.io/examples/transparent-aesop-bottles)
[](https://pmndrs.github.io/examples/raycast-cycling)
[](https://pmndrs.github.io/examples/landing-page)
[](https://pmndrs.github.io/examples/scrollcontrols-gltf)
[](https://pmndrs.github.io/examples/merged-instance)
[](https://pmndrs.github.io/examples/gpgpu-curl-noise-dof)
[](https://pmndrs.github.io/examples/hi-key-bubbles)
[](https://pmndrs.github.io/examples/floating-instanced-shoes)
[](https://pmndrs.github.io/examples/simple-audio-analyser)
[](https://pmndrs.github.io/examples/camera-scroll)
[](https://pmndrs.github.io/examples/springy-boxes)
[](https://pmndrs.github.io/examples/floating-diamonds)
[](https://pmndrs.github.io/examples/gltf-animations)
[](https://pmndrs.github.io/examples/sparks-and-effects)
[](https://pmndrs.github.io/examples/camera-shake)
[](https://pmndrs.github.io/examples/ragdoll-physics)
[](https://pmndrs.github.io/examples/react-spring-animations)
[](https://pmndrs.github.io/examples/mount-transitions)
[](https://pmndrs.github.io/examples/floating-laptop)
[](https://pmndrs.github.io/examples/zustand-site)
[](https://pmndrs.github.io/examples/cell-fracture)
[](https://pmndrs.github.io/examples/router-transitions)
[](https://pmndrs.github.io/examples/soft-shadows)
[](https://pmndrs.github.io/examples/lulaby-city)
[](https://pmndrs.github.io/examples/viking-ship)
[](https://pmndrs.github.io/examples/wobbling-sphere)
[](https://pmndrs.github.io/examples/moksha)
[](https://pmndrs.github.io/examples/flexbox-yoga-in-webgl)
[](https://pmndrs.github.io/examples/confetti)
[](https://pmndrs.github.io/examples/learn-with-jason)
[](https://pmndrs.github.io/examples/volumetric-spotlight)
[](https://pmndrs.github.io/examples/racing-game)
[](https://pmndrs.github.io/examples/pinball-in-70-lines)
[](https://pmndrs.github.io/examples/space-game)
[](https://pmndrs.github.io/examples/minecraft)
[](https://pmndrs.github.io/examples/arkanoid)
[](https://pmndrs.github.io/examples/rapier-ping-pong)
[](https://pmndrs.github.io/examples/arkanoid-under-60-loc)
[](https://pmndrs.github.io/examples/basic-demo)
[](https://pmndrs.github.io/examples/drei-rendertexture)
[](https://pmndrs.github.io/examples/bvh)
[](https://pmndrs.github.io/examples/environment-blur-and-transitions)
[](https://pmndrs.github.io/examples/pairing-threejs-to-ui)
[](https://pmndrs.github.io/examples/inverted-stencil-buffer)
[](https://pmndrs.github.io/examples/stencil-mask)
[](https://pmndrs.github.io/examples/transformcontrols-and-makedefault)
[](https://pmndrs.github.io/examples/bounds-and-makedefault)
[](https://pmndrs.github.io/examples/instanced-vertex-colors)
[](https://pmndrs.github.io/examples/progressive-loading-states-with-suspense)
[](https://pmndrs.github.io/examples/view-tracking) -- views, portals
[](https://pmndrs.github.io/examples/multiple-views-with-uniform-controls) -- views, portals
[](https://pmndrs.github.io/examples/canvas-text) -- html, scroll
[](https://pmndrs.github.io/examples/gltf-animations-re-used)
[](https://pmndrs.github.io/examples/re-using-gltfs)
[](https://pmndrs.github.io/examples/svg-renderer)
[](https://pmndrs.github.io/examples/mixing-html-and-webgl)
[](https://pmndrs.github.io/examples/viewcube)
[](https://pmndrs.github.io/examples/mixing-controls)
[](https://pmndrs.github.io/examples/video-textures)
[](https://pmndrs.github.io/examples/sky-dome-with-annotations)
[](https://pmndrs.github.io/examples/tying-canvas-to-scroll-offset)
[](https://pmndrs.github.io/examples/edgesgeometry)
[](https://pmndrs.github.io/examples/html-annotations)
[](https://pmndrs.github.io/examples/shadermaterials)
[](https://pmndrs.github.io/examples/simple-physics-demo)
[](https://pmndrs.github.io/examples/trigger-meshes)
[](https://pmndrs.github.io/examples/simple-physics-demo-with-debug-bounds)
[](https://pmndrs.github.io/examples/selective-outlines)
[](https://pmndrs.github.io/examples/instances)
[](https://pmndrs.github.io/examples/physics-with-convex-polyhedrons)
[](https://pmndrs.github.io/examples/color-grading)
[](https://pmndrs.github.io/examples/grass-shader)
[](https://pmndrs.github.io/examples/clouds)
[](https://pmndrs.github.io/examples/svg-maps-with-html-annotations)
[](https://pmndrs.github.io/examples/re-using-geometry-and-level-of-detail)
[](https://pmndrs.github.io/examples/html-markers)
[](https://pmndrs.github.io/examples/bezier-curves-and-nodes)
[](https://pmndrs.github.io/examples/shader-fire)
[](https://pmndrs.github.io/examples/water-shader)
[](https://pmndrs.github.io/examples/staging-and-camerashake)
[](https://pmndrs.github.io/examples/shader-hmr)
](https://nasa-ammos.github.io/3DTilesRendererJS/example/bundle/r3f/basic.html)
](https://takram-design-engineering.github.io/three-geospatial/?path=/story/clouds-3d-tiles-renderer-integration--tokyo)
](https://nytimes.github.io/three-loader-3dtiles/dist/web/examples/demos/realitycapture/)
](https://farazzshaikh.github.io/THREE-CustomShaderMaterial/#/caustics)
](https://takram-design-engineering.github.io/three-geospatial/?path=/story/atmosphere-3d-tiles-renderer-integration--manhattan)