sparkjsdev/spark

:sparkles: An advanced 3D Gaussian Splatting renderer for THREE.js

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 2 minutes ago
Added to GitGenius on September 19th, 2026
Created on May 23rd, 2025
Open Issues & Pull Requests: 128 (+0)
GitHub issues: Enabled
Number of forks: 398
Total Stargazers: 3,639 (+1)
Total Subscribers: 28 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 10.6 hours
Mean response time: 10.5 days
90th percentile: 15.7 days
Tracked items: 170

Most active contributors

Sign in to see contributor activity.

How this project is maintained

About 9% of issues opened in the past year have never received a reply. 95% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. 71% of tracked open issues have had no activity in three months, so the open count overstates what is actively being worked. Only 49% of issues opened in the past year have been closed. Three people close 58% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 96
New in 7 days: 1
Closed in 7 days: 2
Avg open age: 291 days
Stale 30+ days: 85
Stale 90+ days: 78

Recent activity

Opened in 7 days: 1
Closed in 7 days: 2
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Detailed Description

Spark is an advanced 3D Gaussian Splatting renderer for THREE.js that integrates splat rendering with mesh-based objects in the THREE.js pipeline.

Gaussian splatting is a technique for rendering 3D scenes captured or generated as point clouds with Gaussian primitives. Spark solves the problem of efficiently rendering these splats in web environments by providing a WebGL2-based renderer that fuses splatting with traditional mesh rendering. The tool supports most major splat file formats including PLY, SPZ, SPLAT, KSPLAT, and SOG, and enables dynamic transformations, real-time color editing, displacement, and skeletal animation of splat objects. It includes a shader graph system for creating and editing splats on the GPU and can render multiple splat objects together with correct depth sorting and multiple viewpoints simultaneously.

Spark is designed for developers building web-based 3D applications who need to incorporate Gaussian splat assets alongside traditional THREE.js meshes. It targets broad device compatibility, aiming for WebGL2 support across nearly all devices and performing efficiently even on low-powered mobile hardware. The tool is portable and can be integrated via CDN or NPM, making it accessible for various project scales from simple visualizations to complex interactive experiences.

The project maintains active development with regular updates to its codebase and documentation. Build infrastructure includes Rust WebAssembly components alongside TypeScript, with tooling for local development, example running, and documentation generation. The team provides comprehensive examples demonstrating the renderer's capabilities and maintains detailed documentation and FAQ resources for developers adopting the tool.