iTwin.js Core

repository·master·Indexed 20 days ago

https://github.com/itwin/itwinjs-core

Core components of iTwin.js, an open source library for creating, querying, modifying, and displaying Infrastructure Digital Twins. It includes packages for backend interaction (@itwin/core-backend), shared logic (@itwin/core-bentley, @itwin/core-common), EC schema management (@itwin/ecschema-metadata, @itwin/ecschema-locaters), and frontend developer tools (@itwin/frontend-devtools) for diagnosing display systems and manipulating viewports.

Tokens
776.7K
Snippets
1.9K
Records
3.6K
Agent score
73%

What's inside itwinjs-core

  1. Overview of @itwin/core-common

    master
    The @itwin/core-common package provides a set of shared classes designed for working with iModels. These classes are environment-agnostic, meaning they are engineered to be used in both frontend (browser) and backend (Node.js) applications, ensuring consistent iModel logic across your entire stack.
  2. Overview of @itwin/presentation-backend

    master
    The @itwin/presentation-backend package provides the necessary types and classes for backend services to query presentation data directly from iModels. This allows backend applications to access and process how data is visually or structurally presented within the iTwin ecosystem.
  3. Overview of quantity formatting in iTwin.js

    master

    Quantity formatting in iTwin.js applications allows for the runtime application of format definitions to numeric values. The workflow consists of three main pillars:

    1. Providing formats: Using UnitsProvider and FormatsProvider implementations to supply the necessary format definitions to the application.
    2. Formatting and parsing: Converting numeric values into human-readable formatted strings for display, and parsing user-provided strings back into numeric values.
    3. Unit conversion: Managing the transformation between persistence units (how data is stored) and display units (how data is shown to the user).
  4. Overview of @itwin/frontend-devtools tools and widgets

    master

    The @itwin/frontend-devtools package provides tools and widgets for diagnosing issues in the iTwin.js front-end display system.

    Available Widgets

    • KeyinField: Executes tools by typing their key-in string (supports autocompletion).
    • FpsTracker: Displays average frames-per-second.
    • TileStatisticsTracker: Displays the state of tile requests.
    • MemoryTracker: Displays GPU memory allocation statistics.
    • TileMemoryBreakdown: Breaks down GPU memory used by tiles relative to the displayed set.
    • GpuProfiler: Displays GPU timing queries and supports recording for chrome://tracing.
    • DiagnosticsPanel: A single panel that combines all the above widgets.

    Tools

    The package includes a collection of immediate-mode and interactive-mode tools. All tool key-in strings are prefixed with fdt (e.g., fdt <command>).

  5. Overview of iTwin.js

    master

    iTwin.js is an open source library designed for creating, querying, modifying, and displaying Infrastructure Digital Twins. It enables developers to:

    • Create digital twins of assets or projects.
    • Aggregate diverse data sources including Engineering Models, Reality Data, Geographic Information Systems (GIS), and Internet of Things (IoT) data.
    • Visualize data and engineering changes in 3D and 4D.
    • Analyze data to drive business outcomes across multiple platforms.