Sinytra / Connector

A compatibility layer that allows running Fabric mods on NeoForge
https://sinytra.org/docs/connector
MIT License
532 stars 23 forks source link
compatiblity connector fabricmc minecraft mod neoforge

πŸ“– About

Sinytra Connector is a translation/compatibility layer that allows running Fabric mods on NeoForge. Its goal is to bring the two platforms closer together, saving developers time and effort maintaining their mods for multiple platforms at once, as well as allowing players to play all their favourite mods in one modpack.

πŸ“˜ The official documentation is available at sinytra.org.

πŸ”— Related Projects

πŸ’¬ Join the Community

We have an official Discord community for Connector. By joining, you can:

πŸ“‹ Usage Guide

To install Connector and its dependencies, follow the same installation steps as you would for any other mods:

  1. Install NeoForge. We recommend using the latest stable version.
    [NeoForge's website]
  2. Install Connector. Get the latest release from one of our official distribution channels and drop the jar in your mods folder.
    [CurseForge] [Modrinth] [GitHub]
  3. Download the Forgified Fabric API. It is meant to be a direct replacement for the Fabric API and is not compatible with it. We'll try our best to avoid loading the Fabric API if it's installed automatically (e.g. by your modpack manager), but if you have the option to avoid installing it, please do so.
    [CurseForge] [Modrinth] [GitHub]
  4. You're good to go! With all dependencies installed, grab your favourite Fabric mods and just drop them in the mods folder like you would with any NeoForge mods. Connector will handle loading them for you with no additional steps required.

πŸ” Get help

If you're having trouble running a mod on Connector, join our community on Discord, ask us on GitHub Discussions or open an issue in this repository.

Here's a few tips to follow when reporting issues:

  1. Make sure you are using latest available version. Look for existing issues that might've already been answered / fixed. Think about whether the issue is caused by Connector itself and not another mod you've installed. To test this, try reproducing the same issue on Fabric.
  2. Navigate to the issues tab and open a new issue. Select one of the available templates depending on the topic. Fill in the required fields. In order to increase our chances of identifying and reproducing the issue, please make sure to include as many details as possible.
  3. Once you're done describing the problem, submit the issue. We'll get to you as soon as we can.

Please note that providing as many details as possible is crucial to help us find and resolve the issue faster, while also getting you a fixed version ASAP.

Supported versions

βœ… 1.21 is our primary supported version. This is the one that will receive new fixes and compatibility improvements.

⚠️ 1.20.1 is our long-term-support version and will still receive critical bugfixes. However, no compatibility fixes will be made.

βš–οΈ License

Sinytra Connector is, and will always remain, licensed under the MIT License. All files in this repository should be treated as such unless otherwise explicitly stated.

🀝 Contributing

Before you decide to make major changes, you might want to discuss them with us beforehand, so that you're not wasting your time. To submit your changes to the project, you can contribute via Pull-Request.

Here's a few tips to help get your PR approved:

πŸ› οΈ Developer guide

If you're a mod developer and you'd like to run Connector in your dev environment, it is possible in just a few steps. Used Fabric mods must be mapped to intermediary so that Connector can process them.

ModDevGradle Usage

plugins {
   // Used to attach the clean mapped Minecraft artifact to run configurations
   // Find the latest version at https://maven.su5ed.dev/#/releases/org/sinytra/adapter/userdev/
   id 'org.sinytra.adapter.userdev' version '<version>'
}
repositories {
    // Make sure to add this to the pluginManagement.repositories block in settings.gradle as well
    maven {
        name = "Sinytra"
        url = "https://maven.su5ed.dev/releases"
    }
}
dependencies {
    // Add Connector to the launch classpath
    additionalRuntimeClasspath "org.sinytra:Connector:<version>"
    // Add FFAPI dependency
    runtimeOnly "org.sinytra.forgified-fabric-api:forgified-fabric-api:<version>"
    // Install desired Fabric mods. Make sure they remain unmapped at runtime
    runtimeOnly "some.fabric:mod:<version>"
}

βš™οΈ Configuration

All information regarding Connector's configuration options can be found on our website.