{"id":21048511,"url":"https://github.com/kurtlawrence/dirtvz","last_synced_at":"2025-03-13T22:42:46.733Z","repository":{"id":176431688,"uuid":"658478910","full_name":"kurtlawrence/dirtvz","owner":"kurtlawrence","description":"Web-based 3D rendering of large spatial data for the mining industry 🔎⛰🔍","archived":false,"fork":false,"pushed_at":"2023-07-17T06:12:05.000Z","size":8794,"stargazers_count":2,"open_issues_count":25,"forks_count":0,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-01-20T18:12:34.500Z","etag":null,"topics":["3d-renderer","mining-industry","rust-wasm","web-3d-viewer"],"latest_commit_sha":null,"homepage":"https://kurtlawrence.github.io/dirtvz/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kurtlawrence.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","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},"funding":{"github":["kurtlawrence"]}},"created_at":"2023-06-25T21:28:33.000Z","updated_at":"2024-03-24T10:10:08.000Z","dependencies_parsed_at":null,"dependency_job_id":"25d13b0f-ec1c-423d-aad8-ee836639de30","html_url":"https://github.com/kurtlawrence/dirtvz","commit_stats":null,"previous_names":["kurtlawrence/dirtvz"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kurtlawrence%2Fdirtvz","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kurtlawrence%2Fdirtvz/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kurtlawrence%2Fdirtvz/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kurtlawrence%2Fdirtvz/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kurtlawrence","download_url":"https://codeload.github.com/kurtlawrence/dirtvz/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243495490,"owners_count":20299921,"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":["3d-renderer","mining-industry","rust-wasm","web-3d-viewer"],"created_at":"2024-11-19T14:43:50.651Z","updated_at":"2025-03-13T22:42:46.714Z","avatar_url":"https://github.com/kurtlawrence.png","language":"TypeScript","funding_links":["https://github.com/sponsors/kurtlawrence"],"categories":[],"sub_categories":[],"readme":"[![Chat on Matrix](https://matrix.to/img/matrix-badge.svg)](https://matrix.to/#/#dirtvz:matrix.org)\n\n# dirtvz 🔎⛰🔍\n\n_Web-based, high performance 3D renderer for the mining industry._\n\n\n- [App 🔎⛰🔍](https://kurtlawrence.github.io/dirtvz/)\n- [Chat 💬 (on [Matrix])](https://matrix.to/#/#dirtvz:matrix.org)\n\nDirtvz is an experimental web-based 3D renderer targeted specifically at the dataset common within\nthe mining industry.\nDirtvz excels at rendering large, detailed surfaces using novel concepts of tiling and level of\ndetail built first class into the API.\nDirtvz consists of a library and an app, where the app is targeted as a 'batteries included' web\napp that can be included in user apps with low friction.\nThe library is for inclusion in larger app stacks.\nDirtvz aims to be both a utility and a practical research project. As web-based 3D rendering\ncontinues to improve, dirtvz aims to explore the practical challenges and present solutions which\ncan be extended to other projects.\n\n\u003e 🧪 `dirtvz` is in a highly experimental stage, focused on prototyping technologies and\n\u003e techniques to enable high performance rendering of large mining datasets through the browser.\n\u003e Please note that dirtvz is is in very early stages of prototyping and there are no stability\n\u003e guarantees. The included app is still very rudimentary and support for various objects is\n\u003e limited.\n\u003e See [Features Roadmap](#Features-Roadmap) for checklist to MVP.\n\n# Features Roadmap\n\nThis is a quick list of items needing development.\nAs the project matures, Github issues will be adopted more formally.\n\n- [x] camera interactions\n- [x] information about cursor location in world coords\n- [ ] alter lighting properties (UI picker)\n- [ ] two toned meshes\n- [ ] mesh textures\n- [ ] mesh aerial\n- [ ] mesh edge rendering\n- [ ] grid render\n- [x] make gh repo\n- [ ] world axis (persistent and on rotate) -- needs UI toggle\n- [ ] background (UI chooser)\n- [ ] make axes not pickable\n- [ ] button to zoom data extents\n- [ ] `p` for plan view (top down), `p` again to north up, `p` again to reset view\n- [ ] UI toggle for invert mouse scroll\n- [ ] UI help for interactions\n- [x] dynamic filtering tile/lod\n- [ ] apply pipeline optimisations and anti-aliasing\n- [ ] ? Load raw triangles at finest lod detail\n- [ ] world axis behaves poorly at zoom levels\n- [ ] world axis clips on edges\n- [ ] ? rework database to create a store _per object_\n- [ ] progress on preprocessing\n- [ ] ? support for large surfaces (progressive sampling?)\n- [ ] import preprocessing performance (parallelise or cache sampling points)\n- [ ] alert users when an object goes outside of the data extents\n\n# Developing commands\n\n```sh\n# Build Rust to WASM\n#   use --debug for debugging, BUT IS VERY SLOW!\n#   use --features=err-capture to get Rust stack trace printed to console\nwasm-pack build --out-dir wasmpkg --out-name wasm --target bundler\n# Builds Elm\nelm make elm/ViewerUI.elm --output=js/viewer-ui.js\n# Builds Typescript and bundles\nnpm run build\n# Runs local dev server\nnpm start\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkurtlawrence%2Fdirtvz","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkurtlawrence%2Fdirtvz","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkurtlawrence%2Fdirtvz/lists"}