WhitestormJS/whs.js
{ "createdAt": "2015-08-30T10:29:14Z", "defaultBranch": "dev", "description": ":rocket: 🌪 Super-fast 3D framework for Web Applications 🥇 & Games 🎮. Based on Three.js", "fullName": "WhitestormJS/whs.js", "homepage": "", "language": "JavaScript", "name": "whs.js", "pushedAt": "2025-01-01T10:46:13Z", "stargazersCount": 6257, "topics": [ "component-driven", "framework", "high-performance", "modular", "physics", "react", "scene-graph", "web-development", "webpack" ], "updatedAt": "2025-11-22T23:54:28Z", "url": "https://github.com/WhitestormJS/whs.js"}
[![Three][three]][three-url]
[![Build Status][travis]][travis-url]
Community chat. [Join us!][discord-url]
[![Discord][discord]][discord-url]
Table of content
Section titled “Table of content”- Basic setup
- Featured projects
- Features
- Donate
- [Why?]!(/.github/WHY.md)
New releases
Section titled “New releases”
whsis currently at v2 major version. We had plans for v3 yet but development isn’t active. So v2 will probably remain the main stable version until further notice.
We try to publish minor update releases for bug fixes, we will review PRs.
# Install npm version$ npm install whsFor
whs@2.2.x(Three.js r92) use @beta tag
# Install npm version$ npm install whs@beta[![NPM Version][npm]][npm-url]
Basic setup
Section titled “Basic setup”Download the minified library or link the one from CDN
<script unsrc="js/three.min.js"></script><script unsrc="js/whs.min.js"></script>The code below makes a WHS.App instance which handles all your [modules]!(modules) and components for better work with WebGL. This one creates a scene, camera and renderer - we add the following modules to the App.
const app = new WHS.App([ new WHS.ElementModule(), // Apply to DOM. new WHS.SceneModule(), // Create a new THREE.Scene and set it to app.
new WHS.DefineModule('camera', new WHS.PerspectiveCamera({ // Apply a camera. position: new THREE.Vector3(0, 0, 50) })),
new WHS.RenderingModule({bgColor: 0x162129}), // Apply THREE.WebGLRenderer new WHS.ResizeModule() // Make it resizable.]);
app.start(); // Run app.Featured projects
Section titled “Featured projects”
Features
Section titled “Features”- 💎 Simple in usage
- :rocket: Speeds up 3D scene prototyping
- 🔌 Component based scene graph
- 💣 Simple integration of any high performance physics even with
Worker(Multithreading) - :dizzy: Automatization of rendering
- 🆕 ES2015+ based
- :large_blue_diamond: Extension system (modules)
- :package: Webpack friendly
- ✔️ Integrated Three.js rendering engine
- :revolving_hearts: Work with whs.js and Three.js at the same time
External Modules
Section titled “External Modules”| Name | Status | Description |
|---|---|---|
| [physics-module-ammonext][physics-ammonext] | Physics module based on Ammo.js |
[physics-ammonext] !: https://github.com/WhitestormJS/physics-module-ammonext [physics-ammonext-npm] !: https://img.shields.io/npm/v/physics-module-ammonext.svg?style=flat-square
Donate
Section titled “Donate”[![OpenCollective Backers][backer-badge]][backer-url] [![OpenCollective Sponsors][sponsor-badge]][sponsor-url]
Backers
Section titled “Backers”Support us with a monthly donation and help us continue framework development🎉 and adding new features💡🎁.
[xo] !: https://img.shields.io/badge/code_style-XO-5ed9c7.svg?style=flat-square [xo-url] !: https://github.com/sindresorhus/xo
[three] !: https://img.shields.io/badge/three-r86-blue.svg?style=flat-square [three-url] !: https://github.com/mrdoob/three.js/
[npm] !: https://img.shields.io/npm/v/whs.svg?style=flat-square [npm-url] !: https://www.npmjs.com/package/whs
[travis] !: https://img.shields.io/travis/WhitestormJS/whs.js.svg?style=flat-square [travis-url] !: https://travis-ci.org/WhitestormJS/whs.js?branch=develop
[discord] !: https://discordapp.com/api/guilds/238405369859145729/widget.png [discord-url] !: https://discord.gg/frNetGE
[backer-url] !: https://opencollective.com/whitestormjs [backer-badge] !: https://opencollective.com/whitestormjs/backers/badge.svg?color=blue [support-url] !: https://opencollective.com/whitestormjs#support [sponsor-url] !: https://opencollective.com/whitestormjs [sponsor-badge] !: https://opencollective.com/whitestormjs/sponsors/badge.svg?color=blue
