I have already done research myself; I know about the PHP frameworks and libraries like CakePHP, eZ-Components, Symfony, Zend. I also know about community software XOOPS and Comuna. I am overwhelmed by the amount of software available. I can certainly read reviews, and I have done that, but now I see myself having two options: I can choose one particular software and start working through their tutorials and documentations to possibly find out a week later, that it is not right for me. Or I can initiate a conversation with experienced people who might help me. And, here I am... My situation is this: I already have a database with items (basically photos). These items are organized in a particular way, which is also already implemented. Now I would like to envelop the whole thing in a community similar to flickr, where the items (photos in flickr) are the things the community is about (in contrast to facebook where it is all about the community itself). The basic thing is the user authentication and sessions - I would reinvent the wheel programming it myself... The software should offer the following functions: - a user system (authentication, password recovery...) - a messaging system such that users can communicate with each other without revealing their email address - users should be able to rate the items and to create comments - well documented interface to integrate with custom items The software should be well documented and have an active community, such that I can extend its functionality - without re-inventing the wheel. Now my question is, with what software library/framework/community would you work to accomplish my task?