Autodesk Revit plugin project organised into multiple solution files that target versions 2020 - 2025.
- C# 12
- .NET Framework 4.8
- .NET 8
Before you can build this project, you will need to install .NET, depending upon the solution file you are building. If you haven't already installed these frameworks, you can do so by visiting the following:
After installing the necessary frameworks, clone this repository to your local machine and navigate to the project directory.
We recommend JetBrains Rider as preferred IDE, since it has outstanding .NET support. If you don't have Rider installed, you can download it from here.
- Open JetBrains Rider
- Click on
File -> Open
and choose the solution file that you want to open. - After the solution loads, you can build it by clicking on
Build -> Build Solution
.
Also, you can use Visual Studio. If you don't have Visual Studio installed, download it from here.
- Open Visual Studio
- Click on
File -> Open -> Project/Solution
and locate your solution file to open. - Upon loading the solution, build it via
Build -> Build Solution
.
To build the project for all versions, create the installer and bundle, the project uses NUKE
To execute your NUKE build locally, you can follow these steps:
-
Install NUKE as a global tool. First, make sure you have NUKE installed as a global tool. You can install it using dotnet CLI:
dotnet tool install Nuke.GlobalTool --global
You only need to do this once on your machine.
-
Navigate to your project directory. Open a terminal / command prompt and navigate to your project's root directory.
-
Run the build. Once you have navigated to your project's root directory, you can run the NUKE build by calling:
Compile:
nuke
Create installer and bundle:
nuke createinstaller createbundle
This command will execute the NUKE build defined in your project.
Publishing the release, generating the installer and bundle, is performed automatically on GitHub.
To execute your NUKE build on GitHub, you can follow these steps:
- Merge all your commits into the
main
/master
branch. - Navigate to the
Build/Build.Configuration.cs
file. - Increase the
Version
value. - Make a commit.
- Push your changes to GitHub, everything will happen automatically, and you can follow the progress in the Actions section of the repository page.
Folder | Description |
---|---|
build | Nuke build system. Used to automate project builds |
install | Add-in installer, called implicitly by the Nuke build |
source | Project source code folder. Contains all solution projects |
output | Folder of generated files by the build system, such as bundles, installers |
Folder | Description |
---|---|
Commands | External commands invoked from the Revit ribbon. Registered in the Application class |
Models | Classes that encapsulate the app's data, include data transfer objects (DTOs). More details. |
ViewModels | Classes that implement properties and commands to which the view can bind data. More details. |
Views | Classes that are responsible for defining the structure, layout and appearance of what the user sees on the screen. More details. |
Resources | Images, sounds, localisation files, etc. |
Utils | Utilities, extensions, helpers used across the application |