views:

820

answers:

13

There are hundreds of shopping cart solutions available for every platform, and all hosting plans come with several already installed. As a developer I understand that most of these are fairly similar from a user perspective.

But which ones are built with the developer in mind? For example, which ones have a decent API so that my custom code doesn't get mingled with the core code or which ones have a well thought through template system so that I can easily customize it for each new client?

+3  A: 

How about ZenCart? It's open source so you can read and modify the source directly.

There's also a decent template system.

chakrit
I have had good experiences thus far with ZenCart.
Nicholas Kreidberg
A: 

osCommerce seems to be pretty popular, and advertises ease of integration as one of it's main features.

X-Cubed
+4  A: 

Magento would be a good choice. It is based on the Zend Framework and is massively open and customizable. Something a real programmer (as opposed to a designer/developer) could really work with.

ST
The problem with magento is that it is horribly documented and it's structured in a way where changing the most mundane detail is absurdly difficult. So in terms of developer friendliness it is not intuitive at all
SeanDowney
+4  A: 

osCommerce is one of those products that was badly designed from the beginning, and becomes basically unmaintainable as time moves forward. Addons are patches, and custom code modifies core. (Unless things have drastically changed since I last looked at it - judging by the version numbers, they have not).

While probably at a bit higher level than you seem to be asking, Drupal is a very attractive platform. It is a CMS at its base, and using ecommerce or Ubercart you can turn it into a store. With modules like CCK and Views you can build very sophisticated ecommerce sites (specialized product types, attributes) with very little coding, plus you get all the CMS tools (editing, access control, etc) for free. If you write your own modules, you can hook into almost anything in Drupal without touching the core code, and you get a ton of flexibility.

Though a lot of developers may not consider it simply because they're stuck in this view that they should write something from scratch, Drupal is a really great development platform for this sort of thing. There is definitely a learning curve to it, especially when you need to write modules for it, but the time it takes to learn and implement a site is still probably less than writing a very customized ecommerce site from scratch.

gregmac
A: 

I would second the Magento suggestion. It has a modern code base and is designed with extensibility in mind. It also has multi-site, multi-language capabilities engineered in from the start. It's open source and seems to have a disciplined development team (with a MySQL AB -like business model) behind it .

micahwittman
+4  A: 

Magento is pretty good, and really powerful, but getting to grips with how to go about extending/replacing things is pretty tricky. The codebase is massively flexible, and just about anything can be replaced or extended, but there's very little documentation on how to go about doing it.

There are plenty of 3rd-party addons, for different payment-providers and other things, and the built-in download-manager handles the installation of these, as well as upgrades to the core code, really well.

Compared to something like OSCommerce though, it wins hands down.

Greg
+1  A: 

CartStore :)

A: 

StoreDemo:http://www.tomatocart.com/index.php/products/store-demo

+2  A: 

I've just discovered opencart which so far I am impressed with.

SeanDowney
A: 

Here is a good review of carts: http://php.opensourcecms.com/scripts/show.php?catid=3&cat=eCommerce

Although the voting doesn't seem to reflect a lot of the feedback from the users, so I would suggest reading the comments to find out pros cons of each

SeanDowney
A: 

What about prestashop ? It's based on Smarty and there's a detail explanation on how to write a module.

aurorius
A: 

Zeuscart is the best php open source shopping cart software.

A: 

Opencart - Possibly the best open source shopping cart for php!

Opencart is an open source shopping cart written in PHP that is rapidly growing in popularity. This is in part down to its creator Daniel Kerr’s hard work in building Opencart from the ground up using a logical MVC framework.

MVC explained:
Model: The database layer. All calls to the database are done here, referenced from the controller.
View: Template display for front and backend. This is where the HTML/CSS designing is done.
Controller: Main controlling code base. This is where the functional code logic is processed.

What this all means is that Opencart’s code is streamlined and easier to follow than some other bloated opensource ecommerce solutions such as OsCommerce and Zencart. The benefits of this easy to follow code makes it easier to customise. Opencart’s template system is pretty easy to get to grips with and an original template can be achieved with some HTML/CSS and image creation skills. However if you do not possess these skills, free templates can be found on numerous places on the web including the Opencart contribs page. Templates are easy to install and you can install your own logo through the Opencart admin area. Brilliant!

Opencart also appeals to designers and shop owners alike because it is fast, secure, well supported and expandable.

Deepesh