I stumbled upon this project in my search for a forum system which doesn't suck (so sick of phpBB and such).
I've read the README on the github repo and the documentation, and I'm still a bit unsure about how I should customize certain features of Misago. I want to make some changes both to the backend and frontend which are specific to my needs only (wouldn't really benefit others). The github README says that for development you should fork the repo and make your changes. This would mean that if I want to keep my version of misago up-to-date, I'd always have to pull the latest, merge, fix any conflicts or incompatibilities with the new version, which is not ideal. The docs on the other hand, suggest that you install misago from the pip repos and that you can customize certain aspects of it, however I haven't seen how you can customize frontend or backend components (not create new components, but rather modify / override misago's).
I'll also provide a couple of examples of such changes, so you understand my question better:
Example #1: Replacing the markdown editor with a WYSIWYG editor (that still results in markdown). I've managed to do this by forking and changing Misago's frontend code, but would like to know if that's the correct way to do this.
Example #2: Replacing the authentication and session mechanism. We have single sign on, which integrates with our other apps, and would like that to be part of the Misago forum too.
I've seen other Django apps which provide a way to override their own files, by creating a custom app with the same name, and telling django to use that instead of the respective app's one. Any file that don't exist in my custom app, would be pulled from the contrib app. Not sure if this makes any sense.
Anyway, any help regarding which approach I should take would be greatly appreciated. Thank you