{"id":13731729,"url":"https://github.com/alaingalvan/webgl-seed","last_synced_at":"2026-03-12T00:02:08.295Z","repository":{"id":41741644,"uuid":"209702584","full_name":"alaingalvan/webgl-seed","owner":"alaingalvan","description":"🌐🌱 A starter repo for building WebGL applications.","archived":false,"fork":false,"pushed_at":"2023-03-04T04:46:13.000Z","size":316,"stargazers_count":48,"open_issues_count":7,"forks_count":7,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-11-14T22:35:43.055Z","etag":null,"topics":["graphics","introduction","seed","webgl"],"latest_commit_sha":null,"homepage":"https://alain.xyz/blog/raw-webgl","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alaingalvan.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"license.md","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,"publiccode":null,"codemeta":null}},"created_at":"2019-09-20T04:04:41.000Z","updated_at":"2024-07-30T21:20:27.000Z","dependencies_parsed_at":"2024-11-14T22:32:37.209Z","dependency_job_id":"a7092ec7-9245-413f-8706-8f1cc6fc7666","html_url":"https://github.com/alaingalvan/webgl-seed","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alaingalvan%2Fwebgl-seed","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alaingalvan%2Fwebgl-seed/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alaingalvan%2Fwebgl-seed/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alaingalvan%2Fwebgl-seed/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alaingalvan","download_url":"https://codeload.github.com/alaingalvan/webgl-seed/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226071033,"owners_count":17569103,"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":["graphics","introduction","seed","webgl"],"created_at":"2024-08-03T02:01:37.181Z","updated_at":"2026-03-12T00:02:03.269Z","avatar_url":"https://github.com/alaingalvan.png","language":"TypeScript","funding_links":[],"categories":["Graphics"],"sub_categories":[],"readme":"![Cover Art](https://alain.xyz/blog/raw-webgl/assets/cover.jpg)\n\n# WebGL Seed\n\n[![License][license-img]][license-url]\n[![Unit Tests][travis-img]][travis-url]\n[![Dependency Status][david-img]][david-url]\n[![devDependency Status][david-dev-img]][david-dev-url]\n\nA simple hello triangle example you could use to as a basis when starting WebGL.\n\n- [🔳 Codepen Example](https://codepen.io/alaingalvan/pen/OMEqKa)\n\n- [💬 Blog Post](https://alain.xyz/blog/raw-webgl)\n\n## Setup\n\nFirst install:\n\n- [Git](https://git-scm.com/)\n\n- [Node.js](https://nodejs.org/en/)\n\n- A Text Editor such as [Visual Studio Code](https://code.visualstudio.com/).\n\nThen type the following in any terminal your such as [VS Code's Integrated Terminal](https://code.visualstudio.com/docs/editor/integrated-terminal).\n\n```bash\n# 🐑 Clone the repo\ngit clone https://github.com/alaingalvan/webgl-seed\n\n# 💿 go inside the folder\ncd webgl-seed\n\n# 🔨 Start building the project\nnpm start\n```\n\n\u003e Refer to [this blog post on designing web libraries and apps](https://alain.xyz/blog/designing-a-web-app) for more details on Node.js, packages, etc.\n\n## Project Layout\n\nAs your project becomes more complex, you'll want to separate files and organize your application to something more akin to a game or renderer, check out this post on [game engine architecture](https://alain.xyz/blog/game-engine-architecture) and this one on [real time renderer architecture](https://alain.xyz/blog/realtime-renderer-architectures) for more details.\n\n```bash\n├─ 📂 node_modules/   # 👶 Dependencies\n│  ├─ 📁 gl-matrix      # ➕ Linear Algebra\n│  └─ 📁 ...            # 🕚 Other Dependencies (TypeScript, Webpack, etc.)\n├─ 📂 src/            # 🌟 Source Files\n│  ├─ 📄 renderer.ts    # 🔺 Triangle Renderer\n│  └─ 📄 main.ts        # 🏁 Application Main\n├─ 📄 .gitignore      # 👁️ Ignore certain files in git repo\n├─ 📄 package.json    # 📦 Node Package File\n├─ 📄 license.md      # ⚖️ Your License (Unlicense)\n└─ 📃readme.md        # 📖 Read Me!\n```\n\nSome key dependencies are:\n\n- [gl-matrix](http://glmatrix.net/) - WebGL's best linear algebra library, perfect for people used to linear algebra libraries like [GLM](https://glm.g-truc.net/0.9.9/index.html) or the built in GLSL data structures.\n\n- [Webpack](https://webpack.js.org/) - Compiles our TypeScript files and creates binaries for us to use.\n\n- [TypeScript](https://github.com/microsoft/typescript) - JavaScript with types, makes it significantly easier to program web apps with instant autocomplete and type checking.\n\n[license-img]: https://img.shields.io/:license-unlicense-blue.svg?style=flat-square\n[license-url]: https://unlicense.org/\n[david-url]: https://david-dm.org/alaingalvan/webgl-seed\n[david-img]: https://david-dm.org/alaingalvan/webgl-seed/status.svg?style=flat-square\n[david-dev-url]: https://david-dm.org/alaingalvan/webgl-seed#info=devDependencies\n[david-dev-img]: https://david-dm.org/alaingalvan/webgl-seed/dev-status.svg?style=flat-square\n[travis-img]: https://img.shields.io/travis/com/alaingalvan/webgl-seed.svg?style=flat-square\n[travis-url]:https://www.travis-ci.com/github/alaingalvan/webgl-seed","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falaingalvan%2Fwebgl-seed","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falaingalvan%2Fwebgl-seed","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falaingalvan%2Fwebgl-seed/lists"}