Modern Gradle plugin for multi-version development, you can check out Stonecutter here.
This has tremendously sped up development and made maintaining multiple versions much easier.
This is mainly a NEOFORGE mod
Some versions do have Fabric support, however I'm limited by the model loader missing on Fabric and relying on a library that someone made and hasn't updated. Here is an archived out of date Fabric-only version