Your specific problem
THE community extension for Joomla is Community Builder (CB).
There are also voting, commenting, bloging, etc. extensions available.
Your problem will be to find a combination which does what you want to an acceptable extent.
If your customer is not satisfied and has MUSTS which the Joomla+Extensions solution doesn't provide you will have to start hacking the extensions or start writing plug-ins.
Now hacking a Joomla installation is not really a good idea since upgrading will become hard and a not upgraded Joomla installation is a great security risk.
In the end you might be better of developing your own Joomla extension which does what you need it to do, or refrain from using Joomla at all.
The more extensions you use at the same time, the harder maintenance of hacked code will be.
Joomla pros and cons in general
Joomla is definitely one of the best CMS but it always depends on your needs, what tools you use. Two websites can help with the choice greatly:
CMS overviews
- OpensourceCMS A page where you can live-test over a 100 open source CMS and similar software
- CMSMatrix Basically an extremely large feature comparison matrix of almost 1000 (a thousend, yes) CMS and similar software (in all price ranges)
My own experience story
There was a time, when Typo3 was strong among free CMS but that time is over, the interface is clunky and complicated, Typo3 has fallen far behind in the race. Then there was a time when Mambo became strong and later Joomla split from Mambo and became even stronger. But the code legacy of the Joomla 1.0 series was strongly flawed and a new player quickly took the momentum: Drupal. Cleaner code, clearer node based architecture, maybe for some too hard to get. In the same time when Drupal got strong and popular, the Joomla 1.0 series had serious security problems. Stories about hacked installations piled up and Drupal had the pole position for some time. Joomla 1.5 is a completely different story. It has a few fantastic new features and in every upgrade (Now 1.5.10) more and more code follows OO, MVC and other nice principles. Together with the enormous wealth of extensions (components, plugins, design templates) Joomla definitely offers more options than any other open source CMS. I've had several extrem cases (for which I would do custom development today) where only Joomla was able to fullfill all the needs for a project. There are also a few new names which have a great potential. Silverstripe for example.