Skip to content

Latest commit

 

History

History
21 lines (16 loc) · 1.47 KB

File metadata and controls

21 lines (16 loc) · 1.47 KB

RevitLookup Development Guidelines

RevitLookup is an inspection tool for Autodesk Revit. Core principles:

  1. Dual Environments: Production (Revit.exe) and Playground (standalone WPF). Code must be environment-agnostic.
  2. LookupEngine: Core logic resides in LookupEngine and must be decoupled from Revit UI.
  3. Production Standards: Enterprise-grade C#, SOLID, and strict naming conventions.
  4. No Revit UI in Core: Never reference Autodesk.Revit.UI in Engine or Abstractions.
  5. Modern C#: Use latest features (Primary Constructors, Collection expressions).

Specialized Guidelines

Before doing specialized work, read the matching file:

  • Project Structure – When searching for specific module responsibilities, adding new projects, submodules.
  • Architecture – When extending LookupEngine (Descriptors, Resolvers, Extensions).
  • Code Style – When writing or refactoring C# code, implementing MVVM (CommunityToolkit).
  • UI Development – When creating XAML templates, styling WPF components, or implementing custom type visualization.
  • Revit Best Practices – When interacting with Revit API.
  • Testing Strategy – When writing TUnit tests for Revit or creating mocks for the Playground environment.
  • Package Management – When adding, updating, or managing NuGet dependencies.