[Paid] Migrate proprietary forums to Discourse

I need help migrating my existing proprietary forums (~37k messages spread over ~900 topics in ~30 categories) over to Discourse.

I have written an importer script in PHP using the API, but I keep running into weird problems with the API, rate limits, and trust levels. And everyone keeps telling me “just start with the nice importer scripts that come with the software!” which I can’t do because I don’t know RoR so well. That’s where you come in. :slight_smile:

What would you like done?

  1. I give you sample mysql dumps of my existing forums, and explain the schema (it’s very simple).

  2. I have already created the categories in Discourse and know exactly where everything goes (of course everything will be remapped from the old category structure to discourse, and there is some slight consolidation/rearranging of some categories), which has all been figured out already and I’ll communicate clearly.

  3. Some of the original messages may have one JPEG image attached. If so, I need that image to be imported so it has an internal URL and is managed by Discourse, and then appended as a photo at the end of the original message.

  4. In order to test the importer, I’d like to be able to do a test run of (say) just one topic, or one full category of topics.

  5. Taking into account all of the above, you give me an importer script, which creates new users and topics as needed, and then fills the topics with posts. I will run this script on my local (development) instance of Discourse, per the recommendation for importing. (I am an experienced developer/tech guy; just don’t know RoR/Ruby and the intricacies of Discourse.)

  6. My new Discourse forums are launching next Monday, April 13. (On that date, I will close the old forums and redirect everyone to Discourse.) Before that date, I need the importer script to be complete and I want to be able to do a test run. (I don’t want to wait until April 13, in case there are any glitches!)

  7. I would like to run the script once before the end of this week to import a bulk of the users/messages/topics, and then run it once more on April 13 to import the remaining messages since the last import. So the importer may need a way to ignore existing material it has imported, OR it should be able to erase existing topics and import everything all at once over again. Either way, it’s important that I want to see the script run successfully before the end of this week. :wink:

  8. Just FYI my forum’s content is adult in nature… a lot of explicit text, and sometimes the attached pictures are explicit as well. You probably won’t be seeing much of it (I hardly even notice it any more :laughing:) but I just want to let you know ahead of time.

  9. The project is complete when all the topics (and all their messages and attachments, and related users) have been moved over successfully and live in Discourse on April 13.

When do you need it done?

Before the end of THIS WEEK. April 13 is the drop-deadline, but as I explain above, I want to see the import script in action before then.

What is your budget, in $ USD that you can offer for this task?

It’s very difficult to judge what’s appropriate but I know there’s some work involved here. Let’s say a flat US$500.

By the way…

I’d like to hire someone who has done migrations before and has experience with the Discourse import scripts.

And, while this job has nothing to do with themes, it is very likely that in the future I will hire someone to create a full custom theme for my Discourse (to match the rest of my site). So if you have any experience in creating themes, please let me know.


Hi Jay @pfaffman - are you a good candidate for this gig?


It’s what I do. I’ll send a pm.


Hey, just wanted to follow up-- I ended up hiring Jay @pfaffman and it was a great experience. My task had a very short-term deadline and he jumped into action. Jay clearly knows Discourse inside out, and even when some unexpected stuff came up along the way, he handled it quickly.

I’m looking forward to working with him again in the future, and would happily recommend his services to others.