Switching from Discourse

General Discussion
  • #1

    Hi All.

    I'm thinking about migrating my community from Discourse to NodeBB for several reasons and I wanted to double check with you all a few things.

    1 Is there any easy way to import my content from Discourse?
    2 What's the "best" work flow for NodeBB? I like how it is out of the box but at some point we'll start working on our own theme and I wonder how that should work. How can we deploy live local changes etc.


  • #2

    Coincidentally, just yesterday we were talking to @bentael the author of most of the migration plugins. He's planning on having a Discourse importer done soon.

    For your second question, you can develop themes on a development environment and publish to a repository (ex. GitHub). When you're ready to pull live just git pull in your node_modules/theme_name folder, and run ./nodebb restart and that's all.

    EDIT: For theme development, run grunt on development and everytime you make a change to a template file nbb will automatically compile templates for you. There's also a live reload plugin available.

    I imagine this is somewhat similar to what you're used to if you've made a theme for Discourse before

  • Plugin & Theme Dev

    @Nic-Gutierrez said:

    for several reason

    Can you share them? 😉

  • Plugin & Theme Dev


    I just tested and successfully imported a sample Discourse DB against the latest stable NodeBB v0.8.2

    [email protected]

    and this exporter module by BenLubar

    if you want to start playing around with it over the next few days till I confirm everything looks good but don't import and shutdown your live discourse instance yet

    Since the discourse exporter module is not published yet, you will need to point the importer to the github repo, using the git: protocol, when you're setting up the configs - see the screenshot below.

    0_1446002109069_Screen Shot 2015-10-27 at 11.13.46 PM.png


    You can install the discourse exporter yourself.

    cd /path/to/NodeBB/node_modules
    git clone https://github.com/BenLubar/nodebb-plugin-import-discourse.git
    cd nodebb-plugin-import-discourse
    npm install

    then, in the Importer Configs, make sure you still write module name in there like this screenshot, and check the "Skip the module install" box, as this screenshot.

    0_1446002404375_Screen Shot 2015-10-27 at 11.19.43 PM.png


    I would create a cloned dump of your discourse forum and test against it. I am not a postgres expert, but i had to prefix all tables with restore. (with the dot) after I imported this test-database-dump this way psql discourse_db < dump.sql -- see screenshot

    0_1446002879670_Screen Shot 2015-10-27 at 11.25.13 PM.png

  • #5

    Hi All.

    Thank you very much for your replies!

    The main reason is the overall look and feel of NodeBB: I really like the UI because it's clean and easy to use. I also kind of get the idea that this community is more active. The other main reason is the home page! I really like the fact that you can customise it and make it more appealing for your users.

    Also, I was browsing all the communities using NodeBB just to get an idea of what you can do with it and I found some amazing examples! I can't wait to start using it.

    Ok so I keep development my plugins and my theme locally and then when I'm ready I pull whatever I need from the remote instance, makes sense, thank you.

    Exactly what I was looking for, thank so much, and thank you for taking the time to putting together I mini-guide, I appreciate it.


  • Plugin & Theme Dev

    @Nic-Gutierrez actually just last night I added the discourse exporter to the list, so dont have to do anything more than just selecting "nodebb-plugin-import-discourse" from the list of the exporters and it will install it for you.

  • Plugin & Theme Dev

    [email protected] - basically just use the latest all the time.

  • Plugin & Theme Dev

    @Nic-Gutierrez one last thing, I would love to have more discourse db dumps to test against, if you're willing to share yours to help improve the development of the importer that would be great - if you're worried about private data, I suggest you remove or change the sensitive data to become like mock data, even though I would never share them publicly.

Suggested Topics

| | | |