What would be the best software to build a site with members, forums and chat?
Here is my answer.
You have many options and here I will outline just a few.
1) Use WordPress
It is the most popular CMS (Content Management System) in the world, with some 15% of all sites built on it. It is easy to install, easy to setup (it gets a little technical but you will have dozens of sites to help you out immediately), and you can all do it on your own.
Basic WordPress will not do what you want now, but you will be able to install plugins and themes, which is another name for pieces of software that fit into WordPress and enhance its capabilities. There is also something called BuddyPress, which will enhance basic WordPress to the level of a full social media site.
bbPress would be the name of the forum for WordPress but there are many others.
With WordPress, possibilites are endless but you will have to experiment. Out of the box, WordPress will fall short for you want.
2) Joomla
Joomla would be the best choice for what you want: it has membership functions right in, and you can add additional software to it via so called extensions. Most extensions are free and there are paid ones, which usually are complete software solutions on their own. In Joomla, you will be able to have many levels of users, user groups and you will be able to control who has access to what. I have one membership site like that, where I sell courses in astrology and energy healing and it functions just right.
There will be some steep learning path with Joomla, especially if you have never seen it in action. But it is free, it adapts to various screen factors automatically (meaning the site will show well on mobile devices) and so on.
You will be able to add forums (the best is called Kunena), chats and so on for free, just roam through the extensions site on joomla.org.
3) Make it on your own.
That what I currently with do PHP, a framework called CakePHP and a plugin called User Management. PHP and CakePHP are free, the plugin costs $50 but gives me exactly what you want: ability to create new user accounts, manage them in the background and create any style of site that I want. It is also much less prone to hacks and attacks than WordPress and Joomla, because hackers all over the world attack those two easily and joyfully.
For forum, chat etc. you would have to find already existing plugins for CakePHP or write your own.
There is a steep, steeep learning curve for CakePHP but once you get it, you will be able to produce unusual but optimized sites at will.
The verdict? In your case, Joomla.
P.S. If you want to compare various CMS systems, try the following link: