Featured post

Agentic AI for Revit
How we connected Claude Code to Revit through a local MCP server that generates, compiles and runs C# scripts inside a live Revit session.

Revit + Gemini integration: A smart assistant right inside Revit
Gemini integrated into Revit: a smart assistant that understands your model, answers questions, and performs actions. Design faster with AImatiq.

How to add custom buttons to the Revit Status bar
A walkthrough on how to inject custom buttons into Revit’s Status Bar — a semi-native solution.

Development tools we use to build BIM & AEC software
Learn which IDEs, plugins, and AI tools help us write better code and optimize every step of development.

How to сreate a сustom Dockable Pane in Revit
How to register a custom dockable pane in Revit through the API — registration order, lifecycle gotchas, and working code.

Memory leaks in Revit API applications
C# takes care of memory with automatic garbage collection, but leaks can still sneak in. Learn when they happen and how to prevent them.

How to automatically update Revit plugins
Stop updating Revit plugins manually. Enable automatic updates to keep every installation up to date with the latest features, fixes, and improvements. Learn how it works.

How to migrate Revit Extensible Storage Schemas
Explore how to migrate Revit Extensible Storage Schemas without losing existing data. Explore a practical approach to schema versioning, automatic migrations, and simplified data management for Revit add-ins.

How to enhance Revit add-in UX with OptionsBar
Discover how to use OptionsBar to create a better user experience in Revit add-ins. Implementation examples, customization options, and best practices for building intuitive Revit plugin interfaces.

Interprocess communication: Strategies and best practices
Why Revit plugin developers are stuck on .NET Framework 4.8, and how interprocess communication lets you use modern libraries anyway.
