views:

98

answers:

4

A client is looking for a custom web application, which will eventually include lots of interconnected components, but the main features are:

  • Subscription based membership as well as virtual/digital product sales
  • Members have their own public web cookie-cutter directories (e.g., storefronts, pages, etc.) and personal member admin area.
  • Site administrators will need both common tools (member admin, password changes, etc.) and custom tools that can be readily developed or integrated with 3rd party solutions.

What frameworks should we be looking at? PHP/MySQL is preferable unless something really outstanding is available in another stack.

+1  A: 

Take a look here for some of the more popular PHP frameworks: http://www.phpframeworks.com/ These typically give you a lot of tools but allow for a lot of flexibility.

Some CMS-like frameworks such as as Drupal may be able to satisfy your requirements as well. They will be less flexible, but may be a better option if modules exist for your use cases.

No silver bullet, just lots of options.

RenderIn
+1  A: 

I personally can recommend Django and from other people who I trust, Rails. I left PHP frameworks behind. Zend doesn't have an ORM - which is crazy these days.

CakePHP seemed to be the best PHP Framework when I last looked, but it's on PHP, which is just not as efficient to code for medium+ projects.

Django has a ready to go admin as well which is amazing. Just define your models and the admin pages are ready to go. The tutorial is worth doing just so you see how other people are doing things - only takes a day. Documentation is great too.

One final recommendation - use Ubuntu - regardless of the framework.

Adam Nelson
Why do people fuzz about ZF not having an ORM? ZF has a use-at-will architecture with lots of loosely coupled components you may or may not use. If you need an ORM to go with that, add Doctrine or Propel. ZF is not Rails or Django. Never wanted to be. These are full stacks. ZF is deliberately not.
Gordon
Zend makes it out like ZF is a full stack - just look at their site.
Adam Nelson
+2  A: 

The current Next Big Thing is Magento:

Magento is the eCommerce software platform for growth that promises to revolutionize the industry. Its modular architecture and unprecedented flexibility means your business is no longer constrained by your eCommerce platform. Magento is total control.

It is open-source and based on Zend Framework, although there is no much left of that (or so I hear). It can be customized to fit almost any needs and comes with an impressive feature set. Not sure from your question how much you are going to need from this. Might be overkill though.

Magento has a Community Edition and a (pretty costly) Enterprise Edition. There is also an active community around it, providing extensions to it: Themes, Payment Gateways, etc.

EDIT While not a generic Framework like CI, Cake or Symfony, it is an eCommerce framework and since your requirements are aimed at and the question tagged with ecommerce, it might fit your needs.

Gordon
+1  A: 

CakePHP, Zend and symfony are the big ones. They all employ MVC and are in use in many production sites.

webbiedave