All Projects → pmndrs → React Three Next

pmndrs / React Three Next

React Three Fiber, Nextjs, Tailwind starter

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to React Three Next

Three Seed
A Three.js starter project with ES6 and Webpack
Stars: ✭ 213 (+9.23%)
Mutual labels:  starter, webgl, threejs
Stickyimageeffect
A sticky image effect for a slideshow inspired by ultanoir's website.
Stars: ✭ 158 (-18.97%)
Mutual labels:  webgl, threejs
Texture Compressor
CLI tool for texture compression using ASTC, ETC, PVRTC and S3TC in a KTX container.
Stars: ✭ 156 (-20%)
Mutual labels:  webgl, threejs
Three Nebula
WebGL based particle system engine for three.js
Stars: ✭ 192 (-1.54%)
Mutual labels:  webgl, threejs
Geo Three
Tile based geographic world map visualization library for threejs
Stars: ✭ 146 (-25.13%)
Mutual labels:  webgl, threejs
Interactivelandscape
An exploration of an animated interactive landscape built with three.js.
Stars: ✭ 150 (-23.08%)
Mutual labels:  webgl, threejs
Vue Displacement Slideshow
A Vue.js 2.0 slideshow component working with Three.js
Stars: ✭ 165 (-15.38%)
Mutual labels:  webgl, threejs
Ng Three Template
This is a basic template project to start with Angular 11.x and ThreeJS
Stars: ✭ 144 (-26.15%)
Mutual labels:  webgl, threejs
Threejs Path Flow
🐬🐟 ↶Mesh Deformation / Bending / Following on a Curve
Stars: ✭ 165 (-15.38%)
Mutual labels:  webgl, threejs
React Globe
Create beautiful and interactive React + ThreeJS globe visualizations with ease.
Stars: ✭ 167 (-14.36%)
Mutual labels:  webgl, threejs
Expo Voxel
🎮🌳 Voxel Terrain made in React Native. ∛
Stars: ✭ 169 (-13.33%)
Mutual labels:  webgl, threejs
Antipasto
🍽 Juicy starter for three.js
Stars: ✭ 147 (-24.62%)
Mutual labels:  webgl, threejs
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...).
Stars: ✭ 2,042 (+947.18%)
Mutual labels:  webgl, threejs
Wechart
Create all the [ch]arts by cax or three.js - Cax 和 three.js 创造一切图[表]
Stars: ✭ 152 (-22.05%)
Mutual labels:  webgl, threejs
Andromeda
This is a WebGL recreation of the popular music video Gorillaz - Andromeda.
Stars: ✭ 145 (-25.64%)
Mutual labels:  webgl, threejs
Patches
Patches is a visual programming editor for building WebVR and WebGL experiences.
Stars: ✭ 164 (-15.9%)
Mutual labels:  webgl, threejs
Threejs Modern App
Boilerplate and utils for a fullscreen Three.js app
Stars: ✭ 176 (-9.74%)
Mutual labels:  webgl, threejs
3d Force Graph
3D force-directed graph component using ThreeJS/WebGL
Stars: ✭ 2,386 (+1123.59%)
Mutual labels:  webgl, threejs
Ego
A lightweight decision making library for game AI.
Stars: ✭ 145 (-25.64%)
Mutual labels:  webgl, threejs
Threejs Sandbox
Set of experiments and extensions to THREE.js.
Stars: ✭ 163 (-16.41%)
Mutual labels:  webgl, threejs

David David Downloads Discord Shield Lighthouse Global

🏯 React-Three-Next starter

First Load JS of 78Kb. This starter will automatically pick the marked R3F components and inject them into a canvas layout so we can navigate seamlessly between the pages with some dynamic dom and canvas content without reloading or creating a new canvas every time.

⚫ Demo :

image

How to use

Installation

Tailwind is the default and only stable

yarn create r3f-app next my-app

or

npx create-r3f-app next my-app

🗻 Features

  • [x] Automatically inject r3f component in the Canvas
  • [x] Support glsl imports
  • [x] PWA Support
  • [x] Layout for Canvas and DOM
  • [x] Template for the meta data and header
  • [x] Clean code using ESlint, Prettier and Husky
  • [x] VSCode debug profiles for the server, Chrome, and Firefox

🚄 Architecture

Inform the nextjs page that the component is a Threejs component. For that, simply add the r3f property to the parent component.

const Page = () => {
  return (
    <>
      <h1>Hello !</h1>
      {/* Simply add the r3f prop to the parent component -> */}
      <MeshComponent r3f />
    </>
  )
}

export default Page

🎛 Available Scripts

  • yarn dev - Next dev
  • yarn analyze - Generate bundle-analyzer
  • yarn lint - Audit code quality
  • yarn build - Next build
  • yarn start - Next start
  • yarn export - Export to static HTML

⬛ Stack

  • threejs – A lightweight, 3D library with a default WebGL renderer.
  • react-three-fiber – A React renderer for Threejs on the web and react-native.
  • @react-three/drei – useful helpers for react-three-fiber
  • @react-three/a11y – Accessibility tools for React Three Fiber
  • tailwind – A utility-first CSS framework packed with classes like flex, pt-4, text-center and rotate-90 directly in your markup.
  • r3f-perf – Tool to easily monitor react threejs performances.
  • @three-material-editor – Tool to easily edit the shaders of your threejs materials.

How to contribute :

git clone https://github.com/pmndrs/react-three-next
&& cd react-three-next && yarn install
# then push using the terminal to trigger Husky

Maintainers :

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].