This is a Babylon.js 9 starter templates collection built on Vite 8 and TypeScript 6, created by BabylonPress.
It delivers a strong foundation for modern 3D web experiences: fast to start, pleasant to work with, and flexible enough to grow from a simple prototype into a polished product. The template combines a clean developer setup with powerful rendering, making it easy to build interactive scenes without fighting the tooling.
What makes it especially good is the balance between usability and capability. It supports multiple frontend styles (Vanilla, React, Vue, Svelte), keeps the project structure approachable, and gives the room to add richer visuals, UI, and gameplay or product features over time. In short, it is not just functional, but a reliable, scalable, and developer-friendly template with real creative potential.
It includes:
- the main
bp900Babylon template insrc/- Havok physics, GLB loading, Babylon GUI, and a lot of sugar to make development sweeter - a minimal
vanillaBabylon template - a minimal
reactBabylon template - a minimal
vueBabylon template - a minimal
svelteBabylon template
Each template is self-contained. They do not share engine, scene, or config code.
npm install
Root template:
npm run devnpm run buildnpm run preview
Other templates:
npm run dev:vanillanpm run build:vanillanpm run preview:vanillanpm run dev:reactnpm run build:reactnpm run preview:reactnpm run dev:vuenpm run build:vuenpm run preview:vuenpm run dev:sveltenpm run build:sveltenpm run preview:svelte
Checks:
npm run typecheck
src/app.ts: mainbp900application entrytemplates/vanilla: plain TypeScript Babylon startertemplates/react: React + Babylon startertemplates/vue: Vue + Babylon startertemplates/svelte: Svelte + Babylon starter
There are two simple ways to work with this repo:
- Work inside this repo and choose one template folder as your app.
- Copy the template folder you want into a new project and continue there.
Examples:
- use
templates/reactas your app and runnpm run dev:react - use
templates/vueas your app and runnpm run dev:vue - use
templates/svelteas your app and runnpm run dev:svelte - use
templates/vanillaas your app and runnpm run dev:vanilla
The root bp900 template includes:
- WebGPU-first startup with WebGL2 fallback
- Havok physics setup
- Babylon GUI example
- GLB model loading example
- FPS counter
- dev-only inspector toggle with
Ctrl+Alt+Shift+I - rendering pipeline defaults
src/app.ts: application bootstrap and engine lifecyclesrc/config/template-config.ts: main template feature flagssrc/playground/main-scene.ts: scene setupsrc/playground/assets.ts: asset URLssrc/playground/model-loader.ts: GLB loading examplesrc/playground/gui.ts: Babylon GUI example
HOWTO.md: practical usage guidewhatsnew.md: beginner-friendly summary of recent improvementschangelog.md: technical change log
- Homepage: https://babylonpress.org/
- Repository: https://github.com/eldinor/bp900
- Issues: https://github.com/eldinor/bp900/issues
Based on https://github.com/eldinor/bp800/ which was based on https://github.com/minibao/babylon-vite