I have searched for many months endlessly for a Q&A / "Question and Answer" platform that has a WYSIWYG editor that functions like Stack Overflow (WMD Editor).

High-level: I want to build a Q&A website for programming-based questions and answers and comments.

What I have found are a lot of Q&A themes for WordPress, plugins for WordPress (Crayon Syntax Highlighter), commercial platforms (ex: answerbase.com), and clones with one fatal flaw - you can't copy/paste code into its WYSIWYG easily, and have it maintain the format and indentation.

I really don't want to name off or link to every single Q&A platform I have ran across and tried. My goal is not to create a resource here or wiki; it's to get suggestions on.

Does anybody recommend a Q&A platform (preferably for PHP or in WordPress) that handles code syntax identically or very similar to Stack Overflow?

I simply want to be able to post questions with code, and post answers with code solutions.

Crayon Syntax Highlighter was promising but I don't like how it pops up on screen.

The best example that's the closest to what I'm looking for is: EngineThemes ForumEngine, EngineThemes QA Engine, Askbug.

  • 2
    FYI: Stack Exchange clones – Franck Dernoncourt Feb 1 '16 at 5:32
  • @FranckDernoncourt Thank you. That link introduced me to a few I didn't know about. Mamute looks promising as well as a few others. – Jarad Feb 4 '16 at 16:39

You can take look at Phanbook at https://github.com/phanbook/phanbook

It is completely open source and is designed to build sites like stackoverflow.


You might want to have a look at Drupal also, together with a specific contributed module for it, which IMO does what you're looking for, and actually much more: the Answers module. Here are some details about it (from its project page):

Answers enables the implementation of a Question & Answer system in a Drupal site. Users can post questions and other users can answer them.

Head over to its project page for more details.

At its core, this module exists of 2 typical content types:

  • Question.
  • Answers.

The "Best Answer" submodule can be used so that the question author can "accept" one of the answers as the best one. And you could make the Rules module to either trigger all sorts of subsequent things to happen "when an answer gets marked as best answer", or to add all sorts of validations when posting an answer (or question).

The Answers module comes with integrations with other modules such as the Rules module and the Userpoints module and supports voting.


Have a look at the (new) demo site of the Answers module. This link shows various menu options within the block with title Answers Menu, i.e.:

  • Questions (= a view):
    • All: of all existing questions (= default tab).
    • Answered: all questions which have a "best" (= accepted) answer (= sub-tab).
    • Unanswered: all questions which do not yet have a "best" (= accepted) answer (= sub-tab).
  • Answers (= a view): lists all existing answers for any of the existing questions and which does not (yet) have any submenu options (implemented as tabs).
  • Rankings (= a view): contains a list of users with their actual ranking (= reputation points implemented via user points), and with each user a link to either the questions or answers from that user.
  • Ask Question: to post a new question (the equivalent of node/add/question), which is only shown for authenticated users though.

These views also use the dataTables format, but you could easily replace that with any views display format you'd want. And because of the search box that comes with dataTables, there is no need for extra menu links to search within questions, answers or rankings.

These new/enhanced views were created starting from the 7.x-4.x-rc2 release of Answers, and will be included in the next release of it also (together with various other enhancements not yet visibile in the demo site).

In the context of this questions here, you may also want to look at the answer to "Does the Answers module support markdown text?", which explains that this module indeed does support it.

Release recommendation

To decide between the 7.x-3.2 and the 7.x-4.0-rc2 release, I would recommend the 7.x-4.0-rc2 . Even though it is not yet an official release, it is fairly stable/functional, and only has a few more minor glitches to be resolved. Pretty soon an rc-3 (the last 'rc' release?) should become available also, which will include the newest features as you can see in the demo site already.

Disclosure: I'm a (co-)maintainer of this module.

Not the answer you're looking for? Browse other questions tagged or ask your own question.