This is a question about how much it’s possible to customize Discourse functionality, and how big a job it’s likely to be.
I’m on the tech team for an organization of professional science fiction writers, largely based around forum software that was written by a now-departed founder. It runs on a creaking asp.net/SQL server setup and we’re keen to migrate to a different platform.
One of the most popular features of the software is a story critique function. Users can upload a document, with a title and wordcount. There’s a specific page that shows all stories currently looking for feedback. The software has some minor gamification built in: uploading a story automatically starts a discussion thread, and anyone who posts a response longer than 750 characters gets points. When a user has received enough responses they can stop anyone else from downloading the file.
On the story download page, next to each user’s name you can see the number of critique points they’ve earned and the number their stories have received. They’re supposed to be kept roughtly at parity but it’s all on the honor system; as far as I know no one has ever been warned for receiving critiques without giving any. It all works quite well (except for the creaking outdated tech setup, see above).
Long-term users have sometimes run up an impressive number of credits, and we’re quite keen to migrate these to the new platform rather than erase everyone’s high scores.
My question is: how simple is it going to be to incorporate functionality like this into a Discourse forum? Is it likely to be within the scope of a bespoke plugin, or would we need a separate app that interacts with Discourse via the api? I’d appreciate any guidance you can give.