dataarts/dat.gui

Lightweight controller library for JavaScript.

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 6 minutes ago
Added to GitGenius on September 8th, 2026
Created on January 23rd, 2011
Open Issues & Pull Requests: 124 (+0)
GitHub issues: Enabled
Number of forks: 1,056
Total Stargazers: 7,727 (+0)
Total Subscribers: 142 (+0)

Repository Insights (GitGenius)

Most active contributors

Sign in to see contributor activity.

Related repositories by overlapping contributors

No overlapping-contributor repos identified yet.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 1
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 668 days
Stale 30+ days: 1
Stale 90+ days: 1

Recent activity

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

Top labels

No label distribution available yet.

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

dat.GUI is a lightweight controller library for JavaScript that provides a graphical user interface for modifying variables in real time.

The tool solves the problem of needing quick, interactive controls for tweaking values during development or runtime without building custom UI elements. It works by bundling all necessary dependencies into a single JavaScript file that can be included in a project, allowing developers to create GUI panels with minimal setup. The library handles style injection directly, though it provides an alternative CSS file for environments with Content Security Policy restrictions that block inline styles.

Developers should choose dat.GUI when building interactive visualizations, creative coding projects, or applications where rapid parameter adjustment is valuable. It suits scenarios where a lightweight solution is preferred over heavier UI frameworks. The tool is available both as a pre-built minified file and through npm installation, making it flexible for different project setups. For projects with strict Content Security Policy requirements, loading the external stylesheet instead of relying on injected styles resolves compatibility issues.

The project maintains active development tooling with npm scripts for building development and production versions, and includes a watch mode for iterative development. The codebase is built using Rollup for bundling and Sass for styling, with QUnit tests in place for validation.