I want to start a "rate my"-style site. The rated objects are mostly texts. I want it to be rather simple. Features I need:

  • object rating (thumb up, thumb down)
  • object comments
  • object tags
  • related object presentation based on tags
  • user authentication and management
  • private message system
  • sanity checks for text inputs (i.e. prevention of code injections)
  • cache
  • open source
  • runs on GNU/Linux

I would gladly take something that is tailored for my scenario but a generic framework would be fine too. I simply don't want to write stuff like user authentication that is been written a million times and risking security flaws.

Programming language is irrelevant but python/php preferred.

EDIT: I chose Django.


Pretty much any popular framework will meet the exact same number of requirements. Things like input validation, user authentication, caching, and being open source are standard framework features. And they're all capable of being used to write specific features like ratings, comments, tagging, etc. The more popular a framework is, the more plugins it might have to cover the specific features, but the features you're looking for are so common that I imagine most frameworks will have plugins for them.

Aside from picking whether you want to use a CMS framework like Drupal/Joomla or a lower level framework like CakePHP, ZF, Kohana, etc., you should pick the framework based on its design, codebase, documentation, community, performance, etc. rather than the specific features of your project (by definition a framework can be used to build any type of application).

  • It goes without saying that good performance, codebase, design and documentation are important. I didn't bother writing them down explicitly. Also I am afraid that i.e. Joomla is to heavy weight for my simple site and I would loose performance compared to a modular framework. What do you think about this? – problemofficer Jan 11 '12 at 5:34
  • Most of the factors I listed are relative, and like most difficult choices, there are usually tradeoffs. Modular frameworks like ZF or other low level frameworks like Kohana can be used to build much leaner applications, but this also means you need to write more code, even though many of the features you're coding are common to most community sites. It may be worthwhile to use a more "bloated" CMS framework like Drupal if its plugin architecture and stock features save you a few months of development, but if your server can't handle it, then you've gotta go with another option. – Lèse majesté Jan 11 '12 at 5:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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