{"id":17801349,"url":"https://github.com/luruke/gl-backend","last_synced_at":"2025-03-17T11:30:36.835Z","repository":{"id":72363404,"uuid":"353148664","full_name":"luruke/gl-backend","owner":"luruke","description":"🚪  POC Detect WebGL rendering backend","archived":false,"fork":false,"pushed_at":"2021-06-14T18:10:52.000Z","size":8,"stargazers_count":33,"open_issues_count":0,"forks_count":3,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-02-27T23:06:03.630Z","etag":null,"topics":["angle","webgl","webgl2"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/luruke.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2021-03-30T21:40:44.000Z","updated_at":"2024-02-18T20:56:02.000Z","dependencies_parsed_at":null,"dependency_job_id":"2eee8bd6-efd9-463a-a336-ef9dd553afe2","html_url":"https://github.com/luruke/gl-backend","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/luruke%2Fgl-backend","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/luruke%2Fgl-backend/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/luruke%2Fgl-backend/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/luruke%2Fgl-backend/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/luruke","download_url":"https://codeload.github.com/luruke/gl-backend/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243858056,"owners_count":20359271,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["angle","webgl","webgl2"],"created_at":"2024-10-27T12:36:39.469Z","updated_at":"2025-03-17T11:30:36.396Z","avatar_url":"https://github.com/luruke.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🚪 gl-backend\nThis is a proof of concept that explores the possibility of detecting the graphic rendering API behind the browser's WebGL implementation.\n\nWebGL's implementations will, at certain point, translates the users supplied shaders from GLSL ES version 100 (version 300 for WebGL2) to the host platform's native shading language. As far as I know, out in production there are only WebGL implementation targeting Direct3D (via ANGLE), Metal (via ANGLE) – 🆕 iOS15 beta, OpenGL and OpenGL ES.\n\nThis proof of concept can be extremely interesting once new backend rendering will be implemented (most likely in ANGLE) in production (notably Vulkan and Metal).\n\nThis little script relies on the WebGL extension [`WEBGL_debug_shaders`](https://www.khronos.org/registry/webgl/extensions/WEBGL_debug_shaders/) which seems enabled by default on many configuration.\n\nExample of OS -\u003e script output:\n```\nMac OS 11 -\u003e OpenGL 4.1\nWindows 10 -\u003e Direct3D\nAndroid 10 -\u003e OpenGL ES 3.0\nAndroid 7 -\u003e OpenGL ES 2.0\niOS 14 -\u003e OpenGL ES 2.0\niOS 15 -\u003e Metal\n```\n\n[DEMO](https://luruke.github.io/gl-backend/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fluruke%2Fgl-backend","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fluruke%2Fgl-backend","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fluruke%2Fgl-backend/lists"}