Building a discussion forum like PF

Click For Summary
SUMMARY

The discussion centers on building a personal web application similar to PhysicsForums, focusing on the ideal database and technology stack. Most forum software utilizes relational databases, specifically MySQL or PostgreSQL, due to their advantages over NoSQL solutions. The XenForo forum software, written in PHP with a MySQL backend, serves as a complex example, but a single experienced full stack developer can create a basic forum in just a few hours. Greg Bernhardt manages the PhysicsForums instance of XenForo and WordPress independently.

PREREQUISITES
  • Understanding of MySQL or PostgreSQL relational databases
  • Familiarity with PHP programming language
  • Knowledge of JavaScript for frontend development
  • Basic concepts of web application architecture
NEXT STEPS
  • Research MySQL 8.0 indexing techniques for performance optimization
  • Learn about PHP frameworks such as Laravel for building web applications
  • Explore JavaScript libraries like React or Vue.js for modern frontend development
  • Study full stack development resources, particularly "PHP and MySQL for Web Development"
USEFUL FOR

Web developers, software engineers, and anyone interested in creating or managing discussion forums will benefit from this discussion.

Monsterboy
Messages
305
Reaction score
96
TL;DR
How to build a discussion forum
I want to work on a personal project, a web application similar to PhysicsForums just to understand how everything works. I have some basic questions.

1. What kind of database is ideal for a discussion forum like this ? SQL or NoSQL ?
2. Which frontend and backend technologies are used to build this forum ?
3. How many people are required to build and maintain a forum like this ?
 
  • Like
Likes   Reactions: atyy
Computer science news on Phys.org
PF uses the forum software XenForo. This is built on some pretty old technologies so may not be the best example to learn from. Also, XenForo is a commercial product that has many users with different requirements and is therefore much more complex than it would be if it only had to run PF.

If you are interested in learning about developing web applications there are lots of resources out there that are more relevant to the way applications are built now e.g. https://www.freecodecamp.org/news/how-to-become-a-full-stack-web-developer-in-2020/

Monsterboy said:
1. What kind of database is ideal for a discussion forum like this ? SQL or NoSQL ?
Most forum software uses a relational database (often MySQL/MariaDB or PostgreSql). There would be a number of difficulties with a NoSQL solution and not many advantages.

Monsterboy said:
2. Which frontend and backend technologies are used to build this forum ?
XenForo is written in PHP and has a MySQL back-end. I believe the front-end JavaScript is proprietory.

Monsterboy said:
3. How many people are required to build and maintain a forum like this ?
There are quite a few people working on XenForo, but that is because they are supporting many different requirements. An experienced full stack developer working alone could put together the basics of a web forum in a couple of hours - I think this is an example used in one of the tutorial books (PHP and MySQL for Web Development? Learning PHP, MySQL & JavaScript?).

I believe @Greg Bernhardt manages PF's instance of XenForo (and WordPress for PF Insights) alone.
 
  • Like
Likes   Reactions: Spinnor, Monsterboy, atyy and 3 others

Similar threads

Replies
7
Views
3K
  • · Replies 2 ·
Replies
2
Views
957
  • · Replies 6 ·
Replies
6
Views
2K
  • · Replies 50 ·
2
Replies
50
Views
8K
Replies
2
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K
  • Sticky
  • · Replies 1 ·
Replies
1
Views
6K
  • · Replies 6 ·
Replies
6
Views
2K
Replies
7
Views
3K
  • Sticky
  • · Replies 0 ·
Replies
0
Views
9K