Run Fabric and Forge mods together
Plexus Mod Loader runs Fabric mods and Forge mods in the same Minecraft instance, on Minecraft 26.1, 26.1.1, 26.1.2, 26.2, 26.3. You install one loader and put both kinds of jars in one mods/ folder. Fabric mods whose mixins do not fit Forge's patches are not loaded yet: on 26.2 with 1.2.5 that is no Fabric API module, but three Fabric mods (Architectury, Balm, Lithium) (below). On Minecraft 26.3, mixing loaders works since 1.2.5, with a few more mods left out (below).
This page explains how it works, what has been checked, what does not work yet, and how to set it up.
Short answer
| Question | Answer |
|---|---|
| Can Fabric and Forge mods run in one game? | Partly, on Minecraft 26.1 to 26.3 (26.3 since 1.2.5). A Fabric mod whose mixins cannot work on Forge's patched game is not loaded, and neither are the mods that need it (below) |
| Do I need Fabric Loader or the Forge installer? | No. Plexus Mod Loader provides the Fabric Loader API itself. The first start with a Forge mod downloads Forge's files |
| Will every mod work? | No. On 26.2, Architectury, Balm and Lithium, and the Fabric mods that need them, are not loaded next to Forge yet (2026-10-28; on 26.3 also Puzzles Lib and three Fabric API modules). For the rest, the tests check that mods load, start, create a world, tick, and save; each mod's features were not checked one by one (below) |
| Fabric mods with NeoForge mods? | Partly, with the same limit (below). Forge and NeoForge mods in one game: not yet |
| Older Minecraft versions such as 1.20.1 or 1.21.1? | Not supported. See Supported versions and loaders |
When a Fabric mod is left out
Next to Forge or NeoForge, Plexus Mod Loader checks every Fabric and Quilt mod's mixins against the game the other loader patched, before any mod is loaded. A mod with a mixin that cannot work as written there is not loaded (POLY-COMPAT-224), and the mods that need it are not loaded either (POLY-COMPAT-114). The other mods run.
What you see:
- On the title screen, under the mod counts:
Not loaded, Plexus Mod Loader can't run them yet: N. - In
logs/latest.log, one warning that lists those mods, and for each one its mixins and why they do not fit. A dedicated server shows the same warning in its startup log.
This is a limitation of Plexus Mod Loader, not a bug in the mod. The mod's mixins are written correctly for Fabric; it is Plexus Mod Loader that cannot fit them to the other loader's patches yet. Please report it on GitHub Issues to Plexus Mod Loader, not to the mod's author, who cannot fix it.
Until 2026-10-25 such mods ran with the parts that did not fit skipped. That broke features without telling anyone, so it is no longer done. If a mixin still fails during the game in a way the check did not foresee, the game stops, as it would under Fabric Loader, and the message (POLY-COMPAT-225) says that Plexus Mod Loader has to fix it and which mod to remove.
How it works
- One loader owns the game. Every loader wants to define Minecraft's classes itself, and only one can. With Plexus Mod Loader, its game class loader defines them, and mods from the other loaders run on top of it.
- Fabric mods run the way Fabric Loader runs them, without Fabric Loader. Plexus Mod Loader provides the Fabric Loader API (
FabricLoader.getInstance()), applies Mixin and MixinExtras in Fabric Loader's order, reads class tweakers, and unpacks nested jars. - Forge mods run on Forge itself. Plexus Mod Loader runs Forge and FML and hands them the Forge mods it found. Forge's patches are applied to the game on your PC; Plexus Mod Loader does not ship Forge. Which Forge version runs on which Minecraft version is in Supported versions and loaders.
- Where the two meet: before the dependency check, Plexus Mod Loader checks each Fabric mixin against the classes Forge patched. A mixin aimed at something Forge only moved is moved with it and works as written (
POLY-COMPAT-226). A mod with a mixin that cannot work as written is not loaded (above). - The mod lists see each other. Forge's
ModList.isLoadedsees Fabric mods and Plexus Mods, and Fabric'sisModLoadedsees Forge mods.getModContainerByIdreturns Forge mods only. - Decided before startup, not by a crash. Before game code runs, every mod is either loaded or left out with a reason. A Forge mod that Forge would refuse is left out on its own (
POLY-COMPAT-209), where FML would stop loading every mod.
What has been checked
These checks use the compatibility mod set: the most downloaded Fabric and Forge mods on Modrinth for each Minecraft version, plus the mods they require.
| Fabric and Forge mods in one game, on the game test server: world created, GameTest passed, world saved | Result |
|---|---|
| 26.2 (Forge 65.1.5), 2026-10-28, 1.2.5 | Passed. 88 mods of the other loaders loaded, 78 left out. No Fabric API module is left out; Architectury, Balm and Lithium are (224), and the mods that need them are left out with 114. Puzzles Lib loads again (it was left out in 1.2.4: 87 loaded, 79 left out). Earlier runs: 42 loaded and 124 left out on 2026-10-25 (10 Fabric API modules among them), 91 and 75 before 2026-10-25 |
| 26.3 (Forge 66.1.0), 2026-10-28, 1.2.5 | Passed. 80 mods of the other loaders loaded, 86 left out. Left out with 224: Architectury, Balm, Lithium, Puzzles Lib and three Fabric API modules (data-generation, entity-events, item), with the mods that need them. Quilt mods with Forge: 95 loaded, 86 left out. In 1.2.4 these games stopped at start. Forge mods alone pass on 26.3 (30 of 38 on the game test server) |
| 26.1 (Forge 62.0.9) | 21 of 37 Forge mods. Measured before 2026-10-25, not run again since |
| 26.1.2 (Forge 64.1.5) | 30 of 35 Forge mods. Measured before 2026-10-25, not run again since |
The Forge mods left out are ones that real Forge also leaves out or cannot run: client-only mods on a server, mods built for another Forge or Minecraft version, and Mixin configurations that stop Forge's own Mixin.
With the real Fabric API next to Forge (26.2), the 2026-10-27 run left out no Fabric API module. The test that checks Fabric's block break events next to Forge (forgeFabricApiGameTest) has not been run again since 2026-10-25, when those modules were still left out, so what this page said before 2026-10-25 about Fabric's block break events, resource conditions and crafting remainders working next to Forge has not been checked again. On the client on 26.2, Physics Mod (Forge) and Sodium (Fabric) together drew block debris and ragdolls as Physics Mod does alone; that was checked before 2026-10-25 and not run again.
Each loader on its own (client, dedicated server, game test server) is covered in Supported versions and loaders.
What does not work yet
- Fabric mods whose mixins do not fit Forge's patches are not loaded, and neither are the mods that need them (above). On 26.2 with 1.2.5 (2026-10-28) that is Architectury, Balm and Lithium; no Fabric API module is left out. Fabric mods that need those three are left out with them. On 26.3, Puzzles Lib and three Fabric API modules are left out too.
- Mixing loaders on Minecraft 26.3 in a game window. Since 1.2.5, mixing loaders on 26.3 passes the headless popular-mod runs (game test server and dedicated server, 2026-10-28); the client in a game window was not run on 26.3 yet. In 1.2.4 every such game stopped at start.
- Fabric API next to NeoForge. On 26.2, 10 Fabric API modules are still left out next to NeoForge (below). Plexus Mod Loader supports Sinytra's Forgified Fabric API (
forgified-fabric-api) next to NeoForge. Native replacements for the remaining modules are planned. - One jar with both a Fabric and a Forge build of the same mod runs as its Forge build only (
POLY-COMPAT-139). - Forge's loading warnings. If any mod gives Forge a loading warning, Forge turns off its main event bus before showing the warning screen and does not turn it back on, so game events stop reaching every mod. Real Forge does the same, but one mod with a warning can make other mods silently stop working.
- Scope. Running Fabric and Forge mods in one game is outside Forge's full-support criteria; the results above are what has been checked. The launcher runs reproduce how the Minecraft Launcher starts the game; there is no record of a run with the real launcher yet.
- Forge and NeoForge mods in one game. Not supported: Forge runs and the NeoForge mods are left out with the reason (
POLY-COMPAT-221). The two loaders change many of the same game methods in different ways.
NeoForge and Quilt mods
- Fabric and NeoForge. NeoForge mods run in one game with Fabric mods the same way Forge mods do: one Mixin serves both loaders, and Fabric mods start with NeoForge's registries open. The same limit applies: a Fabric mod whose mixins do not fit NeoForge's patches is not loaded (above). On 26.2 with 1.2.4 (2026-10-27, game test server) 10 Fabric API modules are left out this way (block, content-registries, crash-report-info, data-generation, entity-events, events-interaction, item, registry-sync, resource-conditions, transfer); 40 mods of the other loaders load and 76 are left out, with 40 NeoForge mods (on 2026-10-25: 16 modules, 28 Fabric and 48 NeoForge mods). The NeoForge builds of JEI, Kotlin for Forge, Lambda Dynamic Lights, Lithium and MoreCulling load again in 1.2.4; a bug left them out in 1.2.2 and 1.2.3. In the 2026-10-25 run, a test client still joined through login and configuration into the play phase and both loaders' payloads go through, but Fabric API's registry sync is not loaded next to NeoForge (still true in 1.2.5). Other Fabric API modules register
fabric:channels (measured on 26.2 and 26.3, 2026-10-28). 26.1, 26.1.2 and the runs in a game window were not run again under this behaviour. On 26.3, Fabric and NeoForge mods run together since 1.2.5 (2026-10-28: 40 foreign mods loaded, 76 left out, the same 10 Fabric API modules left out); in 1.2.4 they stopped at start. - One mod built for both loaders runs as its NeoForge build (
POLY-COMPAT-139), also when the two builds spell the mod ID differently (Cloth Config iscloth-configfor Fabric andcloth_configfor NeoForge). - Quilt and NeoForge or Forge. Quilt mods run next to NeoForge or Forge mods with the same limit; this was checked on the game test server only. On 26.2 (2026-10-25, not run again since): next to NeoForge mods, 15 Fabric, 12 Quilt and 56 NeoForge mods load (before: 50, 73 and 56), and All Stacks Infinite is also left out with
POLY-COMPAT-224; next to Forge mods, 22 Fabric, 13 Quilt and 42 Forge mods load (before: 51, 73 and 42). Quilt mods on their own areVerifiedon 26.1, 26.1.2 and 26.2. A jar with both Quilt and Forge metadata runs as its Forge build. See Supported versions and loaders.
Set it up
- In the Minecraft Launcher, run vanilla Minecraft once in the version you want, then close the launcher.
- Get the installer from the download page and install the Plexus Mod Loader <Minecraft version> profile. Step by step: Install.
- Put your Fabric mods and Forge mods for that Minecraft version in the launcher folder's
mods/.- Fabric mods that need Fabric API need the regular Fabric API jar. Next to Forge on 26.2, no Fabric API module is left out (2026-10-27); next to NeoForge, 10 are, and Fabric mods that need those are left out with them (above).
- Forge mods must fit the Forge version Plexus Mod Loader runs for your Minecraft version. A mod built for another Forge version is left out (
POLY-COMPAT-209).
- Choose the Plexus Mod Loader profile and play. The first start with Forge mods downloads Forge's files, so it needs an internet connection. A profile made by an older installer has to be installed again for Forge mods (
POLY-COMPAT-206). - The title screen shows how many mods each loader loaded, in the bottom-left corner. With Forge, Plexus Mod Loader's lines go above Forge's own lines. If Fabric mods were left out because Plexus Mod Loader cannot run them next to Forge yet, a line says how many.
If a mod is missing, look for a POLY-COMPAT- code in logs/latest.log and look it up in Error codes. The full list of left-out mods and reasons is in .poly/startup-report.json (blockedFiles and foreignMods).
Dedicated server: the same installer sets up a server (see Install). Put the same mods in the server's mods/. Client-only mods are left out on a server (Fabric POLY-COMPAT-108, Forge POLY-COMPAT-209).
What it costs
Measured on one PC, Minecraft 26.2, on the game test server, against vanilla with no mods. Neither set was compared with Forge's or Fabric Loader's own launcher, and Fabric and Forge mods together were not measured.
| Mods (session) | Start to stop, median | Memory after GC, largest | Server tick p50 |
|---|---|---|---|
| Forge 65.1.5 + 32 Forge mods (2026-10-23) | 6.281 s → 22.864 s | 139.2 → 267.3 MiB | 8.13 → 12.49 ms |
| 97 Fabric mods (2026-10-22) | 6.025 s → 15.005 s | 141.6 → 182.9 MiB | 7.91 → 4.04 ms |
Each pair is vanilla → Plexus Mod Loader with that set, measured in the same session.
- The Forge tick time is recorded as a measured cost, but that PC split runs into two groups (about 8 ms and about 12.3 ms) in the same session, so machine state is not ruled out.
- The Fabric set's shorter ticks are not a Plexus Mod Loader improvement: the set includes Lithium, a server optimization mod, and its mixins applied.
Method and the other measurements: Performance.