Best way to setup content pipeline projects to facilitate modding?

I am converting an XNA game to Mono. Under XNA, the content project, custom pipeline and runtime content projects were all in the same game solution. Also, there was no way for modders to compile their own xnb files for the game.
With Mono, how should I divide the code to allow modders to create .xnb files on their own? Will modders be able to use the Pipeline Tool to do that, and then upload their .xnb files to Steam Workshop for example?

Mono and MonoGame are completely different things, the framework is called MonoGame.

Anyone can install MonoGame so it’s possible for modders to use the pipeline tool to build xnb’s (though not very convenient that they’d have to go and get MonoGame). You could also allow other formats and try to build the xnb’s yourself, though the builds could fail of course. Or you could supply the pipeline tool or some custom tool that builds content specifically for your game with the game itself. The last option is probably most convenient for modders.

Thanks. I am a bit confused - it seems like MonoGame is also building the content as part of the solution build, like XNA used to do. Then what is the purpose of the standalone pipeline tool?

Building the content as part of the solution build uses the standalone tool behind the scenes. The standalone tool was created so it can be used by Visual Studio, Xamarin Studio, the Pipeline Tool and on its own on all desktop platforms (PC, Mac, Linux).

I believe it’s possibly to load in the images etc as is (e.g. png) rather than load in the compiled xnb’s. Maybe look at the file structure so you have a “Mods” folder where the mods go and then a player selected a mod to load you load the images from there as PNG.

Though I’m not 100% how to load a PNG into a Texture2D, but I’ve seen code around these forums that show this somewhere. (I might have even bookmarked the topic.)

Edit: found it quicker than I thought I would, I did indeed bookmark the topic: