public 3d-motion repository
threejs-demo
// Avan0203/threejs-demo
This is a case library that serves as a feasibility verification and learning tool, developed using Three.js and other dependencies.
Three.js Demo Showcase








π Live Preview β’ Get Started β’ Add Your Own Case
Introduction
Three.js Demo is a dynamic case library built with Three.js and modern web technologies. It serves as both a learning playground and a feasibility testbed for interactive 3D web experiences.
Whether you're exploring shaders, physics simulations, or model interactions β this project has you covered!
Featured Capabilities
- π¦ Model Import (GLTF, OBJ, etc.)
- π§ Geometry Transformations (scale, rotate, morph)
- π· Advanced Camera Controls (orbit, fly, first-person)
- π Object Picking & Selection
- π¨ Custom Shader Effects
- βοΈ Physics Integration (via Cannon.js or similar)
- ...and more experimental features!

Getting Started
Clone the repo and spin up the dev server in seconds:
# Install dependencies (using pnpm)
pnpm install
# Start the development server
pnpm dev
Visit http://localhost:6500 (or your configured port) to explore the demos!
Adding New Cases
Want to contribute a new demo? Follow these steps:
- Register your case in pageList.js:
{
type: 'shaders',
name: 'My Cool Shader',
path: '/shaders/my-cool-shader'
}
- Create your demo files under the appropriate directory (e.g.,
src/pages/shaders/my-cool-shader/). - Generate a preview screenshot:
# First time? Install browser for Puppeteer:
npx puppeteer browsers install chrome
# Then generate screenshots
pnpm screenshot
- Preview your work:
pnpm dev
Your new case will appear in the gallery automatically! π
Contribution
We β€οΈ contributions! Whether it's:
- A bug fix π
- A new demo idea π‘
- Documentation improvement π
- Performance optimization β‘
Feel free to:
- π₯ Open an Issue
- π Submit a Pull Request
Letβs build the best Three.js learning resource together!
License
This project is open-source under the MIT License.
See the LICENSE file for details.
Made with β€οΈ and WebGL
Powered by Three.js, Vite, and a sprinkle of creativity β¨