Microsoft's Backing

Microsoft's Continued Backing and the Core Team

Babylon.js 89,603 is still built mostly by Microsoft employees, in the open: on GitHub 29 , Catuhe ("Creator of Babylon.js") and maintainers such as Raanan Weber, Gary Hsu and Cedric Guillemet list Microsoft as their company. In the 30 days to 26 September 2026 the repository took 106 commits from 22 authors, outside contributors included. Questions go to the Discourse forum (forum.babylonjs.com (https://forum.babylonjs.com 89,603 )), and the bug template asks you to confirm a bug there first, which keeps the tracker short (23 open issues against 26,112 stars). The backing buys a paid team that tracks browser changes such as WebGPU, and an Apache-2.0 licence with an explicit patent grant (Three.js 30,815 uses MIT), with no paid tier; the roadmap follows Microsoft's interests, such as WebXR, glTF and Babylon Native 922 (Babylon Native).

Repository activity and the core team as a 3D bar chart with GUI labelsHTMLLive
<!doctype html>
<style>
  body { margin: 0; background: #f7f3ec; }
  canvas { width: 100%; max-width: 600px; height: 380px; display: block; touch-action: none; }
</style>
<canvas id="view"></canvas>
<script src="https://cdn.jsdelivr.net/npm/babylonjs@9.28.0/babylon.js"></script>
<script src="https://cdn.jsdelivr.net/npm/babylonjs-gui@9.28.0/babylon.gui.min.js"></script>
<script>
const canvas = document.getElementById('view');
const engine = new BABYLON.Engine(canvas, true);
const scene = new BABYLON.Scene(engine);
scene.clearColor = BABYLON.Color4.FromHexString('#f7f3ecff');
const camera = new BABYLON.ArcRotateCamera('cam', -Math.PI / 2, 1.2, 12.5,
  new BABYLON.Vector3(0, 1.6, 0), scene);
camera.attachControl(canvas, true);
new BABYLON.HemisphericLight('sky', new BABYLON.Vector3(0.4, 1, -0.6), scene);
const ui = BABYLON.GUI.AdvancedDynamicTexture.CreateFullscreenUI('ui');

// The repository in the 30 days to 26 September 2026
const STATS = [
  ['commits', 106, '#1f5f8b'],
  ['authors', 22, '#3f7d3a'],
  ['open issues', 23, '#b5452f'],
];
const matFor = (hex) => {
  const m = new BABYLON.StandardMaterial(hex, scene);
  m.diffuseColor = BABYLON.Color3.FromHexString(hex);
  m.specularColor = new BABYLON.Color3(0.15, 0.15, 0.15);
  return m;
};
const floor = BABYLON.MeshBuilder.CreateGround('floor', { width: 12.5, height: 3 }, scene);
floor.material = matFor('#e6ddd0');

STATS.forEach(([name, value, hex], i) => {
  const height = value / 25;                           // 25 per metre
  const bar = BABYLON.MeshBuilder.CreateBox(name, { width: 1.2, depth: 1.2, height }, scene);
  bar.position.set(-4.8 + i * 2.2, height / 2, 0);
  bar.material = matFor(hex);
  tag(bar, `${value}\n${name}`, hex, -28 - height * 24);
});

// The core team: Microsoft employees who maintain the engine in the open
const TEAM = ['David Catuhe', 'Raanan Weber', 'Gary Hsu', 'Cedric Guillemet'];
TEAM.forEach((person, i) => {
  const body = BABYLON.MeshBuilder.CreateCapsule(person, { height: 1.3, radius: 0.28 }, scene);
  body.position.set(1.8 + i * 1.3, 0.65, 0);
  body.material = matFor(i === 0 ? '#e09a10' : '#5b3f99');
  tag(body, person.replace(' ', '\n'), '#333', i % 2 ? 60 : -62);
});

// Stars against open issues: questions go to the forum first
const title = new BABYLON.GUI.TextBlock('title',
  '26,112 stars · 23 open issues · 106 commits from 22 authors in 30 days');
Object.assign(title, { fontSize: 15, color: '#333', height: '30px',
  verticalAlignment: BABYLON.GUI.Control.VERTICAL_ALIGNMENT_TOP, top: '8px' });
ui.addControl(title);
const note = new BABYLON.GUI.TextBlock('note', 'Apache-2.0 with a patent grant · no paid tier');
Object.assign(note, { fontSize: 13, color: '#666', height: '24px',
  verticalAlignment: BABYLON.GUI.Control.VERTICAL_ALIGNMENT_BOTTOM, top: '-6px' });
ui.addControl(note);

// A GUI label that follows a mesh on screen
function tag(mesh, text, color, offsetY) {
  const box = new BABYLON.GUI.Rectangle();
  Object.assign(box, { adaptWidthToChildren: true, adaptHeightToChildren: true,
    background: 'rgba(255,255,255,0.85)', thickness: 0, cornerRadius: 6 });
  const label = new BABYLON.GUI.TextBlock('', text);
  Object.assign(label, { color, fontSize: 13, fontWeight: 'bold', resizeToFit: true,
    paddingLeft: '6px', paddingRight: '6px', paddingTop: '2px', paddingBottom: '2px' });
  box.addControl(label);
  ui.addControl(box);
  box.linkWithMesh(mesh);
  box.linkOffsetY = offsetY;
}

engine.runRenderLoop(() => scene.render());
addEventListener('resize', () => engine.resize());
</script>