Skip to main content

VIM for Developers

VIM offers a suite of tools and libraries that empower software developers to implement custom 3D visualizations, workflows, tools, and automations based on their BIM models.

In addition to the libraries and command line applications below, VIM provides software development partnership opportunities, allowing technical customers access to our closed source code, including our high-performance Vulkan renderer. Such a partnership also provides guest access to our Slack messaging system for direct, day-to-day communication as well as consulting hours.

The VIM WebGL viewer

WebGL stadium

VIM Open-Source Libraries

To get started, VIM provides the following free open-source libraries:

  • VIM WebGL Component — The VIM file WebGL viewer for web browsers loads and visualizes VIM files from a URL (URLs can be self-hosted). The viewer is fully customizable and comes with built-in camera controls, isolation, object coloring, a sectioning tool, a measure tool, and widgets for navigating the element hierarchy and for inspecting BIM element properties.
  • VIM File Format — The VIM file format is maintained in a free and open-source GitHub repository. This repository contains technical documentation about the VIM file format as well as libraries to read and write VIM files.

VIM Licensed Libraries and Command Line Applications

VIM additionally provides a collection of licensed libraries and command line applications. These are all unlocked using an offline license key.

  • VIM Revit Core — The VIM Revit Core library enables you to implement your own Revit add-in which invokes the underlying VIM exporter to convert your Revit projects into VIM files.
  • VIM Tool CLI — The VIM Tool is a command line application that enables you to automate a number of tasks involving VIM files, including:
    • Transferring VIM file information into a SQL Server database.
    • Comparing (or diffing) two VIM files and storing the difference in an SQL Server
      database.
    • Merging a collection of VIM files into a single VIM file for custom federation purposes.
    • Deduplicating similar meshes in a VIM file.
  • VIM Clash CLI — VIM Clash is a command line application that enables you to automate the geometric clash detection process and stores the result in a sqlite database. You can transfer these clashes into SQL Server using the VIM Tool.
  • VIM IFC Converter CLI — The VIM IFC Converter is a command line application that enables you to automate the conversion of IFC files into VIM files.