{"id":24182579,"url":"https://github.com/ThatOpen/engine_fragment","last_synced_at":"2025-09-21T04:31:50.984Z","repository":{"id":44845942,"uuid":"496201698","full_name":"ThatOpen/engine_fragment","owner":"ThatOpen","description":null,"archived":false,"fork":false,"pushed_at":"2024-05-11T17:34:55.000Z","size":14245,"stargazers_count":50,"open_issues_count":5,"forks_count":15,"subscribers_count":4,"default_branch":"main","last_synced_at":"2024-05-21T09:35:44.620Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://ifcjs.github.io/fragment/example","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/ThatOpen.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2022-05-25T11:28:17.000Z","updated_at":"2024-05-11T17:34:19.000Z","dependencies_parsed_at":"2024-01-01T09:52:21.660Z","dependency_job_id":"3400f474-a330-4233-9357-e6f2ae046478","html_url":"https://github.com/ThatOpen/engine_fragment","commit_stats":{"total_commits":152,"total_committers":8,"mean_commits":19.0,"dds":0.1578947368421053,"last_synced_commit":"f6b4bde8527f32dbcaad9d130746c72effc19421"},"previous_names":["thatopen/fragment","thatopen/engine_fragment","ifcjs/fragment"],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ThatOpen%2Fengine_fragment","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ThatOpen%2Fengine_fragment/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ThatOpen%2Fengine_fragment/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ThatOpen%2Fengine_fragment/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ThatOpen","download_url":"https://codeload.github.com/ThatOpen/engine_fragment/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":233541852,"owners_count":18691597,"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":[],"created_at":"2025-01-13T08:13:51.593Z","updated_at":"2025-09-21T04:31:50.979Z","avatar_url":"https://github.com/ThatOpen.png","language":"TypeScript","readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://thatopen.com/\"\u003eTOC\u003c/a\u003e\n  |\n  \u003ca href=\"https://docs.thatopen.com/intro\"\u003edocumentation\u003c/a\u003e\n  |\n  \u003ca href=\"https://thatopen.github.io/engine_fragment/examples/FragmentsModels/\"\u003edemo\u003c/a\u003e\n  |\n  \u003ca href=\"https://people.thatopen.com/\"\u003ecommunity\u003c/a\u003e\n  |\n  \u003ca href=\"https://www.npmjs.com/package/openbim-components\"\u003enpm package\u003c/a\u003e\n\u003c/p\u003e\n\n![cover](https://thatopen.github.io/engine_components/resources/cover.png)\n\n\n\u003ch1\u003eFragments \u003cimg src=\"https://thatopen.github.io/engine_components/resources/favicon.ico\" width=\"32\"/\u003e\u003c/h1\u003e\n\n[![NPM Package][npm]][npm-url]\n[![NPM Package][npm-downloads]][npm-url]\n\nFragments is an open-source library designed to store, display, navigate, and edit massive amounts of BIM data with exceptional efficiency—on any device.\n\nThis repository contains the format and a whole toolkit to start building on top.\n\n\n## 🤝 Want our help?\nAre you developing a project with our technology and would like our help?\nApply now to join [That Open Accelerator Program](https://thatopen.com/accelerator)!\n\n## 🧩 The Format\nFragments defines an open BIM format optimized for handling large datasets efficiently.\n\n- Binary and compact for performance\n\n- Free and open source\n\n- Supports geometries, properties, and relationships\n\nThe format is built with [Google's FlatBuffers](https://flatbuffers.dev/), an efficient cross-platform serialization library. This means you can create your own Fragments importer/exporter in any programming language. Just refer to the FlatBuffers documentation to get started.\n\n📄 You can find the Fragments schema [here](https://github.com/ThatOpen/engine_fragment/blob/main/packages/fragments/flatbuffers/index.fbs). It defines what kind of data Fragments can store—anything the schema supports, you can include.\n\nThis library also includes a TypeScript/JavaScript importer/exporter, so you can get up and running fast. But feel free to build your own!\n\nThat said, the easiest way to generate Fragments is by using the built-in IfcImporter, described below.\n\n\n## 🚀 The 3D Engine\n\nFragments comes with a high-performance 3D viewer built on top of Three.js. It’s designed to handle millions of elements in seconds, making it ideal for web-based BIM applications.\n\nWith it, you can:\n\n- Display large BIM models efficiently on any device\n\n- Highlight, filter, raycast, and snap elements\n\n- Retrieve properties and interact with the model\n\n\n## 🔄 Importers and exporters\n\nThis library includes an IfcImporter that works both in the frontend and backend. It makes it simple to bring your IFC data into the Fragments ecosystem.\n\nWe're planning to release more importers/exporters to help integrate Fragments into a wide variety of BIM workflows.\n\n---\n\nWhether you're building a lightweight BIM viewer, a full-scale application, or just exploring the future of open BIM formats, Fragments gives you the tools to do it—fast, open, and free.\n\n\u003e For more information and tutorials, check out our [documentation](https://docs.thatopen.com/intro).\n\n\n[npm]: https://img.shields.io/npm/v/@thatopen/fragments\n[npm-url]: https://www.npmjs.com/package/@thatopen/fragments\n[npm-downloads]: https://img.shields.io/npm/dw/@thatopen/fragments\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FThatOpen%2Fengine_fragment","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FThatOpen%2Fengine_fragment","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FThatOpen%2Fengine_fragment/lists"}