{"repo":"pmndrs/detect-gpu","free":true,"listed":false,"github":"https://github.com/pmndrs/detect-gpu","clone":"git clone https://github.com/pmndrs/detect-gpu.git","description":"Classifies GPUs based on their 3D rendering benchmark score allowing the developer to provide sensible default settings for graphically intensive applications.","language":"TypeScript","stars":1210,"topics":["gpu","detection","browser","webgl","webgl2","benchmarks","progressive-enhancement","adaptive","device","hardware"],"license":"MIT","category":"game-templates","readme_excerpt":"@pmndrs/detect-gpu Migrating from detect-gpu ? This package has moved to @pmndrs/detect-gpu . Update your imports: Classifies GPUs based on their 3D rendering benchmark score allowing the developer to provide sensible default settings for graphically intensive applications. Think of it like a user-agent detection for the GPU but more powerful. Note: Our benchmark data source (gfxbench.com) stopped updating in December 2025. The current data remains accurate for existing GPUs, but we are exploring alternative data sources for future updates. See #132 for progress. Demo Live demo Installation Self-hosting benchmark data By default benchmark data is loaded from the UNPKG CDN ( https://unpkg.com/@pmndrs/detect-gpu@{version}/dist/benchmarks ). To serve it yourself (e.g. for offline environments, strict CSP, or to avoid a third-party CDN): 1. Download benchmarks.tar.gz and extract it into a publicly served directory — for example public/benchmarks/ in your app. 2. Point getGPUTier at that URL via the benchmarksURL option: The directory must be served at the exact URL passed in — detect-gpu appends filenames like /benchmarks-d- .json to it when fetching. Usage detect-gpu uses rendering benchmark scores (framerate, normalized by resolution) in order to determine what tier should be assigned to the user's GPU. If no WebGLContext can be created, the GPU is blocklisted or the GPU has reported to render on less than 15 fps tier: 0 is assigned. One should provide a fallback to a non-WebGL","default_branch":null,"files":null,"tree":[],"storefront":"/r/pmndrs","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/pmndrs/detect-gpu/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}