detect-features
Version:
Detect and report browser and hardware features.
188 lines • 6.42 kB
JSON
{
"hardwareFeatures": {
"windowSize": "360,612",
"screenSize": "360,740",
"endianness": "little",
"workerPoolSize": 8,
"devicePixelRatio": 3
},
"browserSettings": {
"isCookieEnabled": true,
"isDoNotTrackEnabled": true
},
"browserFeatures": {
"isWebXRSupported": false,
"isWebVRSupported": false,
"isWebGLSupported": true,
"isWebRTCSupported": true,
"isWebGL2Supported": true,
"isGamepadSupported": true,
"isWebAudioSupported": true,
"isWebWorkerSupported": true,
"isIndexedDBSupported": true,
"isWebSocketSupported": true,
"isWebAssemblySupported": true,
"isPerformanceSupported": true,
"browserType": {
"deviceType": "mobile",
"browserName": "Chrome",
"deviceModel": "SM-G950F",
"deviceVendor": "Samsung",
"browserVersion": "63.0.3239.111",
"browserEngineName": "WebKit",
"operatingSystemName": "Android",
"browserEngineVersion": "537.36",
"operatingSystemVersion": "7.0"
},
"isLocalStorageSupported": true,
"isServiceWorkerSupported": true,
"webGLFeatures": {
"base": {
"vendor": "WebKit",
"version": "WebGL 1.0 (OpenGL ES 2.0 Chromium)",
"renderer": "WebKit WebGL",
"shaderVersion": "WebGL GLSL ES 1.0 (OpenGL ES GLSL ES 1.0 Chromium)",
"vendorUnmasked": "ARM",
"rendererUnmasked": "Mali-G71"
},
"general": {
"redBits": 8,
"blueBits": 8,
"antialias": true,
"alphaBits": 8,
"depthBits": 24,
"greenBits": 8,
"stencilBits": 8,
"subPixelBits": 8,
"maxTextureSize": 4096,
"maxVaryingVectors": 15,
"maxRenderBufferSize": 16384,
"maxVertexAttributes": 16,
"maxTextureImageUnits": 16,
"aliasedPointSizeRange": "1,1024",
"aliasedLineWidthRange": "1,4095.9375",
"maxViewportDimensions": "16384,16384",
"maxCubeMapTextureSize": 4096,
"maxVertexUniformVectors": 1024,
"maxFragmentUniformVectors": 1024,
"maxVertexTextureImageUnits": 16,
"maxCombinedTextureImageUnits": 96,
"precision": {
"vertexShaderLowPrecision": "15,15,10",
"vertexShaderHighPrecision": "127,127,23",
"fragmentShaderLowPrecision": "15,15,10",
"fragmentShaderHighPrecision": "127,127,23",
"vertexShaderMediumPrecision": "15,15,10",
"fragmentShaderMediumPrecision": "15,15,10"
}
},
"extensions": {
"maxAnisotropy": 0,
"maxDrawBuffers": 0,
"supportedExtensions": {
"EXT_sRGB": true,
"EXT_blend_minmax": true,
"WEBGL_lose_context": true,
"WEBGL_depth_texture": true,
"WEBGL_debug_shaders": true,
"OES_element_index_uint": true,
"ANGLE_instanced_arrays": true,
"OES_vertex_array_object": true,
"EXT_disjoint_timer_query": true,
"OES_standard_derivatives": true,
"WEBKIT_WEBGL_lose_context": true,
"WEBGL_debug_renderer_info": true,
"WEBKIT_WEBGL_depth_texture": true,
"WEBGL_compressed_texture_etc1": true,
"WEBGL_compressed_texture_astc": true
}
}
},
"webGL2Features": {
"base": {
"vendor": "WebKit",
"version": "WebGL 2.0 (OpenGL ES 3.0 Chromium)",
"renderer": "WebKit WebGL",
"shaderVersion": "WebGL GLSL ES 3.00 (OpenGL ES GLSL ES 3.0 Chromium)",
"vendorUnmasked": "ARM",
"rendererUnmasked": "Mali-G71"
},
"general": {
"redBits": 8,
"blueBits": 8,
"greenBits": 8,
"depthBits": 24,
"antialias": true,
"alphaBits": 8,
"stencilBits": 8,
"subPixelBits": 8,
"maxTextureSize": 4096,
"maxVaryingVectors": 15,
"maxVertexAttributes": 16,
"maxRenderBufferSize": 16384,
"maxTextureImageUnits": 16,
"aliasedPointSizeRange": "1,1024",
"aliasedLineWidthRange": "1,4095.9375",
"maxViewportDimensions": "16384,16384",
"maxCubeMapTextureSize": 4096,
"maxVertexUniformVectors": 1024,
"maxFragmentUniformVectors": 1024,
"maxVertexTextureImageUnits": 16,
"maxCombinedTextureImageUnits": 96,
"precision": {
"vertexShaderLowPrecision": "15,15,10",
"vertexShaderHighPrecision": "127,127,23",
"fragmentShaderLowPrecision": "15,15,10",
"vertexShaderMediumPrecision": "15,15,10",
"fragmentShaderHighPrecision": "127,127,23",
"fragmentShaderMediumPrecision": "15,15,10"
}
},
"specific": {
"maxSamples": 16,
"maxDrawBuffers": 4,
"maxElementIndex": 2147483647,
"max3DTextureSize": 4096,
"maxTextureLODBias": 256,
"maxElementsIndices": 16777216,
"maxElementsVertices": 16777216,
"maxColorAttachments": 4,
"maxUniformBlockSize": 16384,
"maxVaryingComponents": 60,
"maxServerWaitTimeout": 0,
"maxClientWaitTimeout": 0,
"minProgramTexelOffset": -8,
"maxProgramTexelOffset": 7,
"maxArrayTextureLayers": 256,
"maxVertexUniformBlocks": 12,
"maxUniformBufferBindings": 72,
"maxFragmentUniformBlocks": 12,
"maxCombinedUniformBlocks": 72,
"maxVertexOutputComponents": 64,
"maxVertexUniformComponents": 4096,
"maxFragmentInputComponents": 60,
"uniformBufferOffsetAlignment": 16,
"maxFragmentUniformComponents": 4096,
"maxCombinedVertexUniformComponents": 53248,
"maxTransformFeedbackSeparateAttribs": 4,
"maxCombinedFragmentUniformComponents": 53248,
"maxTransformFeedbackSeparateComponents": 4,
"maxTransformFeedbackInterleavedComponents": 64
},
"extensions": {
"maxAnisotropy": 0,
"supportedExtensions": {
"WEBGL_lose_context": true,
"WEBGL_debug_shaders": true,
"EXT_color_buffer_float": true,
"WEBGL_debug_renderer_info": true,
"WEBGL_compressed_texture_etc": true,
"WEBGL_compressed_texture_etc1": true,
"WEBGL_compressed_texture_astc": true,
"EXT_disjoint_timer_query_webgl2": true
}
}
},
"isRequestIdleCallbackSupported": true
}
}