webgl-info
WebGL features info
Based on gl-info
Usage
npm install webgl-info
import WebGLInfo from 'webgl-info'; console.log(WebGLInfo);
And you should get a report similar to the following one:
{ "webgl1": { "webglVersion": 1, "contextName": "webgl", "glVersion": "WebGL 1.0", "vendor": "Mozilla", "renderer": "Mozilla", "unMaskedVendor": "ATI Technologies Inc.", "unMaskedRenderer": "AMD Radeon Pro 560 OpenGL Engine", "angle": "No", "antialias": "Available", "majorPerformanceCaveat": "No", "bits": { "redBits": 8, "greenBits": 8, "blueBits": 8, "alphaBits": 8, "depthBits": 24, "stencilBits": 8 }, "maximum": { "maxColorBuffers": 8, "maxRenderBufferSize": 16384, "maxCombinedTextureImageUnits": 80, "maxCubeMapTextureSize": 16384, "maxFragmentUniformVectors": 1024, "maxTextureImageUnits": 16, "maxTextureSize": 16384, "maxVaryingVectors": 32, "maxVertexAttributes": 16, "maxVertexTextureImageUnits": 16, "maxVertexUniformVectors": 1024, "maxViewportDimensions": [ 16384, 16384 ], "maxAnisotropy": 16 }, "aliasedLineWidthRange": [ 1, 1 ], "aliasedPointSizeRange": [ 1, 8191 ], "shaders": { "vertexShaderBestPrecision": { "high": "[-1.7014118346046923e+38, 1.7014118346046923e+38] (23 bit mantissa)", "medium": "[-1.7014118346046923e+38, 1.7014118346046923e+38] (23 bit mantissa)", "low": "[-1.7014118346046923e+38, 1.7014118346046923e+38] (23 bit mantissa)", "best": "[-2^127, 2^127] (23)" }, "fragmentShaderBestPrecision": { "high": "[-1.7014118346046923e+38, 1.7014118346046923e+38] (23 bit mantissa)", "medium": "[-1.7014118346046923e+38, 1.7014118346046923e+38] (23 bit mantissa)", "low": "[-1.7014118346046923e+38, 1.7014118346046923e+38] (23 bit mantissa)", "best": "[-2^127, 2^127] (23)" }, "fragmentShaderFloatIntPrecision": "highp/highp", "shadingLanguageVersion": "WebGL GLSL ES 1.0" }, "extensions": [ "ANGLE_instanced_arrays", "EXT_blend_minmax", "EXT_color_buffer_half_float", "EXT_frag_depth", "EXT_sRGB", "EXT_shader_texture_lod", "EXT_texture_filter_anisotropic", "OES_element_index_uint", "OES_standard_derivatives", "OES_texture_float", "OES_texture_float_linear", "OES_texture_half_float", "OES_texture_half_float_linear", "OES_vertex_array_object", "WEBGL_color_buffer_float", "WEBGL_compressed_texture_s3tc", "WEBGL_compressed_texture_s3tc_srgb", "WEBGL_debug_renderer_info", "WEBGL_debug_shaders", "WEBGL_depth_texture", "WEBGL_draw_buffers", "WEBGL_lose_context" ] }, "webgl2": { "webglVersion": 2, "contextName": "webgl2", "glVersion": "WebGL 2.0", "vendor": "Mozilla", "renderer": "Mozilla", "unMaskedVendor": "ATI Technologies Inc.", "unMaskedRenderer": "AMD Radeon Pro 560 OpenGL Engine", "angle": "No", "antialias": "Available", "majorPerformanceCaveat": "No", "bits": { "redBits": 8, "greenBits": 8, "blueBits": 8, "alphaBits": 8, "depthBits": 24, "stencilBits": 8 }, "maximum": { "maxColorBuffers": 1, "maxRenderBufferSize": 16384, "maxCombinedTextureImageUnits": 80, "maxCubeMapTextureSize": 16384, "maxFragmentUniformVectors": 1024, "maxTextureImageUnits": 16, "maxTextureSize": 16384, "maxVaryingVectors": 32, "maxVertexAttributes": 16, "maxVertexTextureImageUnits": 16, "maxVertexUniformVectors": 1024, "maxViewportDimensions": [ 16384, 16384 ], "maxAnisotropy": 16 }, "aliasedLineWidthRange": [ 1, 1 ], "aliasedPointSizeRange": [ 1, 8191 ], "shaders": { "vertexShaderBestPrecision": { "high": "[-1.7014118346046923e+38, 1.7014118346046923e+38] (23 bit mantissa)", "medium": "[-1.7014118346046923e+38, 1.7014118346046923e+38] (23 bit mantissa)", "low": "[-1.7014118346046923e+38, 1.7014118346046923e+38] (23 bit mantissa)", "best": "[-2^127, 2^127] (23)" }, "fragmentShaderBestPrecision": { "high": "[-1.7014118346046923e+38, 1.7014118346046923e+38] (23 bit mantissa)", "medium": "[-1.7014118346046923e+38, 1.7014118346046923e+38] (23 bit mantissa)", "low": "[-1.7014118346046923e+38, 1.7014118346046923e+38] (23 bit mantissa)", "best": "[-2^127, 2^127] (23)" }, "fragmentShaderFloatIntPrecision": "highp/highp", "shadingLanguageVersion": "WebGL GLSL ES 3.00" }, "extensions": [ "EXT_color_buffer_float", "EXT_texture_filter_anisotropic", "OES_texture_float_linear", "WEBGL_compressed_texture_s3tc", "WEBGL_compressed_texture_s3tc_srgb", "WEBGL_debug_renderer_info", "WEBGL_debug_shaders", "WEBGL_lose_context" ] }}