JSPM

@datadrivenconstruction/cad2data

1.0.0
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 5
  • Score
    100M100P100Q34791F
  • License MIT

CAD/BIM converter pipeline — Revit, IFC, DWG, DGN to Excel/DAE/PDF with validation and quantity takeoff

Package Exports

  • @datadrivenconstruction/cad2data
  • @datadrivenconstruction/cad2data/lib/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@datadrivenconstruction/cad2data) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

@datadrivenconstruction/cad2data

CAD/BIM converter pipeline — convert Revit, IFC, DWG, DGN files to structured Excel/DAE/PDF data with validation and quantity takeoff.

npm version License: MIT Platform: Windows

Part of the Data Driven Construction ecosystem

Supported Formats

Input Output Converter
.rvt XLSX, DAE, PDF RvtExporter
.ifc XLSX, DAE IfcExporter
.dwg XLSX, PDF DwgExporter
.dgn XLSX DgnExporter
.rvt IFC 2x3/4/4x3 RVT2IFCconverter

Revit versions: 2015–2026 • IFC versions: 2x3, 4.x • DWG: 1983–2026 • DGN: v7–v8

Requirements

Installation

npm install -g @datadrivenconstruction/cad2data

After installation, copy your converter executables into the converters directory:

cad2data list   # shows the converters directory path and status

Copy these files into the shown directory:

  • RvtExporter.exe
  • IfcExporter.exe
  • DwgExporter.exe
  • DgnExporter.exe
  • RVT2IFCconverter.exe

CLI Usage

# Convert a single file
cad2data convert Model.rvt
cad2data convert Model.rvt --mode standard --bbox
cad2data convert Model.ifc -o ./output/

# Convert Revit to IFC
cad2data rvt2ifc Model.rvt --ifc-version 4x3

# Batch convert a directory
cad2data batch C:\Projects --format .rvt --format .ifc -r

# List available converters
cad2data list

# Shorthand — pass file directly
cad2data Model.rvt

Convert Options

Flag Description
--output, -o <path> Output file or directory
--mode, -m <mode> basic / standard / complete
--bbox Include bounding box data
--room Include room data
--schedule Export schedules
--sheets2pdf Export sheets to PDF
--no-xlsx Skip XLSX generation
--no-collada Skip DAE/Collada generation
--category-file <path> Category filter file
--timeout <ms> Timeout in milliseconds

Export Modes

  • basic — 309 categories
  • standard — 724 categories
  • complete — all 1209 categories

Node.js API

const { CAD2Data } = require('@datadrivenconstruction/cad2data');
const cad = new CAD2Data();

// Single file conversion
const result = await cad.convert('C:/Projects/Model.rvt', {
  mode: 'standard',
  bbox: true,
  room: true,
});

// Revit to IFC
await cad.convertRevitToIfc('Model.rvt', {
  ifcVersion: '4x3',
  outputFile: 'Model.ifc',
});

// Batch conversion
const { results, errors } = await cad.batch('C:/Projects', {
  formats: ['.rvt', '.ifc'],
  recursive: true,
  onProgress: (file, i, total) => console.log(`[${i}/${total}] ${file}`),
});

// Check installed converters
const converters = cad.listConverters();
console.log(converters);

API Reference

cad.convert(inputFile, options?)

Convert a single CAD/BIM file.

  • inputFile — path to .rvt / .ifc / .dwg / .dgn
  • options.outputDir — output directory
  • options.outputFile — explicit output path
  • options.mode'basic' | 'standard' | 'complete'
  • options.bbox — include bounding box
  • options.room — include room data
  • options.schedule — export schedules
  • options.sheets2pdf — export sheets to PDF
  • options.noXlsx — skip Excel output
  • options.noCollada — skip DAE output
  • options.timeout — timeout in ms

Returns Promise<{ stdout, stderr }>

cad.convertRevitToIfc(inputFile, options?)

Convert Revit file to IFC format.

  • options.outputFile — output .ifc path
  • options.ifcVersion'2x3' | '4' | '4x3'

cad.batch(dir, options?)

Batch convert all supported files in a directory.

  • options.formats — filter extensions, e.g. ['.rvt', '.ifc']
  • options.recursive — scan subdirectories
  • options.convertOpts — options for each conversion
  • options.onProgress(file, index, total) => void

Returns Promise<{ results, errors, total }>

cad.listConverters()

Returns array of available converters with installation status.

n8n Workflows

This package includes pre-built n8n workflow templates in the workflows/ directory:

  1. Basic Revit/IFC/DWG conversion
  2. All settings configuration
  3. Batch converter pipeline
  4. CAD/BIM data validation
  5. AI classification with LLM and RAG
  6. Construction price estimation with LLM
  7. Carbon footprint / CO2 estimator
  8. Phase extraction with XLSX parsing
  9. Quantity takeoff HTML report generator

Import them into your n8n instance from the workflows/ folder.

License

MIT — see LICENSE