# Need shopping cart for social Rails app - Spree vs substruct vs roll my own

**URL:** <https://www.ruby-forum.com/t/need-shopping-cart-for-social-rails-app-spree-vs-substruct-vs-roll-my-own/182748>\
**Category:** Rails\
**Created:** [February 2, 2010, 9:36am UTC](https://www.ruby-forum.com/t/need-shopping-cart-for-social-rails-app-spree-vs-substruct-vs-roll-my-own/182748 "2010-02-02T09:36:59Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![openmind](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/o/6de8d8/32.png) [@openmind](https://www.ruby-forum.com/u/openmind)\
**Post date:** [February 2, 2010, 9:36am UTC](https://www.ruby-forum.com/t/need-shopping-cart-for-social-rails-app-spree-vs-substruct-vs-roll-my-own/182748/1 "2010-02-02T09:36:59Z")

</div>

Hi all,

I’m building what could best be described as a variant of  
[Threadless.com](http://Threadless.com). Basically, it’s a social app that requires some non-  
trivial social capabilities, combined with a shopping area for making  
purchases of specific crowd-sourced products. I’d like to make the  
transition between the two as seamless as possible, to make the user  
experience consistent. I’ve been looking at Spree and substruct and  
have been trying to figure out which, if either, is the best option  
for this project.

My observation is that Spree is a more advanced solution, but I’m not  
clear on how easy it is to integrate it with an existing application.  
For example, I have the social aspect of the site already built, and I  
already have a Product model. Would I be able to simply add some  
fields and have Spree extend upon that model? Will customizing the  
Spree views to be consistent with my existing layout be a hassle?

Is there any reason to use Substruct over Spree in this case?

Should I just roll my own cart? I’m a little leery of reinventing the  
wheel here; I’d rather finish the prototype and see if the concept  
yields any revenue before wasting time writing a custom-built cart for  
all the little features I’d like to have.

Any suggestions greatly appreciated!

---

<div class="post-metadata">

**Author:** ![openmind](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/o/6de8d8/32.png) [@openmind](https://www.ruby-forum.com/u/openmind)\
**Post date:** [February 3, 2010, 10:30pm UTC](https://www.ruby-forum.com/t/need-shopping-cart-for-social-rails-app-spree-vs-substruct-vs-roll-my-own/182748/2 "2010-02-03T22:30:09Z")

</div>

I’m guessing your effort would be about the same with integrating  
either Spree or Substruct.

I’m currently going through Substruct and cleaning up the code base,  
as I’ve neglected it for the past couple of years while working on  
Cashboard. There’s a lot of weird code in there that needs to be  
refactored, but don’t hold your breath for it all to get done. Right  
now it’s still just a side project for me 😉

Regards & good luck with your project…

* * *

> **[Expert design & software engineering](https://subimage.com/)**
>
> Subimage LLC is a digital agency based in Silicon Valley.
> We're focused on creating high quality experiences your customers will love.

[http://twitter.com/subimage](http://twitter.com/subimage)
