Open-source repositories every Revit and BIM developer should know
Zakhar Vityk, CEO, Consedge Tech
A large part of AEC software stands on open-source work done by a small number of people. This is the list of repositories our team uses or recommends, grouped by job, with a note on when to reach for each one.
It is a working list, not a ranking. If you search GitHub for Revit API projects you will find thousands. These are the ones worth knowing first.

The tables below give each repository's purpose and our note on when to use it.
Revit add-in development
| Repository | What it is | Our note |
|---|---|---|
| RevitLookup | Explorer for the Revit database: inspect any element, parameter or API object without a debugger | The first tool to install. Now maintained by the Lookup Foundation, with a Revit 2027 release |
| RevitTemplates | Project templates for add-ins: multi-version builds, WPF with MVVM, dependency injection, logging, CI pipelines | A new add-in should start here, not from an empty class library |
| RevitToolkit and RevitExtensions | Base classes for commands and applications, external event helpers including async ones, extension methods | Removes most of the boilerplate around modeless windows |
| RevitApi packages | Revit API reference assemblies as NuGet packages, one set per Revit version | What makes building every Revit version on a CI server practical |
| revit-ifc | Autodesk's open-source IFC exporter and importer for Revit | Read it when an IFC export surprises you. The mapping logic is all there |
| pyRevit | Environment that turns Python scripts into Revit ribbon tools | Right for a firm toolbar of small tools |
| Dynamo | The visual programming environment that ships with Revit | Useful to read when a node behaves unexpectedly |
If you are choosing between the last two and compiled code, see Dynamo, pyRevit or a C# add-in. The multi-version setup these templates and packages enable is described in our guide to Revit add-ins on .NET 10.
Testing
| Repository | What it is | Our note |
|---|---|---|
| Revit.TestRunner | Runs NUnit tests inside the Revit process | We use it for tests that need a real document |
| ricaun.RevitTest | NUnit test adapter that starts Revit and runs tests from Visual Studio or dotnet test, across Revit versions | Free to use. Check the repository for which parts are open source |
| FlaUI | UI automation library for Windows applications | We use it to drive plugin dialogs the way a user would |
| RevitBenchmark | Benchmarking for code that runs inside Revit | For the moment someone asks why a command got slower |
| trimesh and Open3D | Python libraries for meshes and point clouds | We use them to compare generated geometry with a reference numerically |
Why tests matter more now that AI writes first drafts is the subject of what it takes to ship an AI-built Revit plugin.
IFC and open BIM
| Repository | What it is | Our note |
|---|---|---|
| IfcOpenShell | C++ and Python toolkit for IFC: parsing, geometry, validation, patching, diffing | The default for server-side IFC processing in Python |
| That Open Engine | BIM components for the browser on top of Three.js, with web-ifc for reading and writing IFC in JavaScript | The current home of what used to be IFC.js. The older web-ifc-viewer and web-ifc-three packages are deprecated |
| xBIM | .NET library for reading and writing IFC | The natural choice when the rest of the stack is C# |
| Speckle | Open-source data platform with connectors for Revit, Rhino, Tekla and others | Worth a look before building a custom exchange between authoring tools |
CAD files and other platforms
| Repository | What it is | Our note |
|---|---|---|
| ACadSharp | C# library that reads and writes DWG and DXF without AutoCAD | We use it for DWG processing on servers |
| TSOpenAPIExamples | Trimble's official Tekla Open API examples, with a branch per Tekla version | The fastest way into Tekla development |
| xCAD.NET | Framework for building SolidWorks add-ins in .NET | Hides much of the COM plumbing |
| aps-sdk-net | Official .NET SDK for Autodesk Platform Services, next to many official samples in the same organization | Start here for any APS integration in C# |
For the architecture around APS, see our Forma and APS integration guide.
AI and MCP
In 2026 Autodesk introduced an official Revit MCP server for Revit 2027 as a technical preview. Since the Revit 2027.2 update it comes as separate Read, Write and Experimental servers, so you decide whether an assistant may change the model.
Community projects came earlier, and some of them also write to the model. mcp-servers-for-revit is one open-source example. Before you install any server that can change a model, read which tools it exposes and how a change is confirmed and undone.
How to judge a repository before you depend on it
- Licence. Read it before anything else. See the next section.
- People. How many maintainers are there? A project with one maintainer can be excellent and still be a risk you should plan for.
- Release rhythm. Does it support the newest Revit, Tekla or IFC version soon after release? Look at the history, not at promises.
- Issues. Are questions answered? Are bugs closed or only collected?
- Exit. If the project stopped tomorrow, could you fork it and maintain what you use?
Read the licence first
Permissive licences such as MIT and Apache 2.0 let you ship the code inside a commercial product with few conditions. Licences such as LGPL and MPL attach conditions to the library itself. GPL and AGPL can extend their terms to the software you distribute with them.
This matters the moment you sell an add-in or deliver one to a client. Check each dependency, write the result down, and ask a lawyer when a copyleft licence is involved. This paragraph is orientation, not legal advice.
What is missing
The Revit ecosystem is rich. Siemens NX has very little comparable open tooling, and SolidWorks and Tekla sit in between. If you build for those platforms, expect to write more of your own infrastructure.
We would also like to see more open test models: realistic, workshared, messy files that every add-in developer could run against.
Thank you
If you maintain one of these projects: thank you. Much of what the industry ships, including what we ship at Consedge Tech, is faster and better because of your work.
If you need a team that already knows this ecosystem, see our plugin development page, or the partner model for software companies.
FAQ
Is RevitLookup still maintained?
Yes. The project moved from Jeremy Tammik's personal account to the Lookup Foundation, and releases have continued through Revit 2027.
Can I use open-source libraries in a commercial Revit add-in?
Often yes, depending on the licence. Permissive licences are simple. Copyleft licences need a careful read before you distribute anything.
What is the best open-source IFC library?
It depends on your stack: IfcOpenShell for Python and C++, xBIM for .NET, web-ifc and That Open Engine for the browser.
Is there an official Revit MCP server?
Yes. Autodesk introduced one for Revit 2027 as a technical preview in 2026. Since Revit 2027.2 it comes in Read, Write and Experimental versions.
Working on something like this?
Thirty minutes with the engineers who would build it, then a written verdict — including “don’t build this” where that is the answer.
- First call free, no obligation
- Straight answers
- Fixed-price written verdict
- Senior engineers, not account managers