I did one in XNA several years ago, shouldn't be hard to convert to MonoGame - or at least be helpful to look at the source code:
This actually looks really cool. I'll be sure to try this out this weekend! Thanks.
Just search around for a lib that already implements it. If its something proven (ie, it has a few games to showcase) then better. You'll spend too much time implementing it from scratch and it wont be a much more enlightening experience than just checking out the implementation of an existing lib.
Yeah I've looked into frameworks like Nez or the C# implementation of the Artemis framework, but I am interested in trying to implement one myself (tends to help me understand the systems more if I at least give it a shot myself).
You can implement your Entity Component System but you have to be very carefully to implement all the situations, and test the system correctly.
One example : if you add one component you have to check if the scene is valid to call "AddedInScene callback" same when you remove the component to call "RemovedFromScene".
Unreal Engine calls that Register/Unregister, but it's the same thing, only another names which is maybe less understanding directly.
The best test is of course to have the system for one game, if you write all that for nothing of course you will never know.
Can you elaborate on that a little bit? Still a bit confused about what you mean by that.