public
Description: Spree is a complete open source commerce solution for Ruby on Rails.
Homepage: http://spreehq.org
Clone URL: git://github.com/schof/spree.git
spree /
name age message
file .gitignore Wed Jun 04 17:48:29 -0700 2008 Ignoring some emacs/sqlite3 files [calas]
file CHANGELOG Thu Jun 05 19:01:46 -0700 2008 Preparing for 0.2.0 release. [schof]
file CONTRIBUTORS Tue Apr 15 19:58:05 -0700 2008 more fixes for the spree project generation [schof]
file INSTALL Mon Apr 21 18:17:33 -0700 2008 updated documentation [schof]
file LICENSE Tue Apr 15 19:58:05 -0700 2008 more fixes for the spree project generation [schof]
file README.markdown Wed Jun 04 17:15:47 -0700 2008 Fixing README.markdown markup for correct display [calas]
file Rakefile Wed Apr 16 11:49:32 -0700 2008 improved bootstrap process [schof]
directory app/ Wed Jun 04 19:26:29 -0700 2008 Refactored the address saving (to allow for eas... [schof]
directory bin/ Wed Apr 23 05:53:10 -0700 2008 Added --demo option to assist in the deployment... [schof]
directory config/ Wed Jun 04 17:15:47 -0700 2008 Adding default sqlite3 database configuration [calas]
directory db/ Thu Jun 05 03:35:00 -0700 2008 Fixing migrations [calas]
directory lib/ Thu Jun 05 19:01:46 -0700 2008 Preparing for 0.2.0 release. [schof]
directory log/ Wed Apr 30 19:01:05 -0700 2008 Updated ignore file to reflect new directory st... [schof]
file login.patch Mon Jun 02 10:34:04 -0700 2008 Fixed a minor style issue with the new login st... [schof]
directory public/ Mon Jun 02 10:34:04 -0700 2008 Fixed a minor style issue with the new login st... [schof]
directory script/ Tue Apr 08 12:51:05 -0700 2008 first step in removing engines dependency - sta... [schof]
directory spec/ Wed Jun 04 19:26:29 -0700 2008 Refactored the address saving (to allow for eas... [schof]
directory stories/ Tue Apr 08 13:03:01 -0700 2008 additional refactoring related to engines move [schof]
directory vendor/ Tue May 27 18:52:29 -0700 2008 Removed problematic resource_controller tests. ... [schof]
README.markdown

SUMMARY

Spree is a complete open source commerce solution for Ruby on Rails. It was developed by Sean Schofield under the original name of Rails Cart before changing its name to Spree.

QUICK START

  1. Install spree Gem

    $ sudo gem install spree
    

    NOTE: This may take a while. The gem currently includes a frozen version of Rails 2.0.2

  2. Create Spree Application

    $ spree <app_name>
    
  3. Create your database and edit the config/database.yml to taste. You can skip this step if using sqlite3 as your database.

  4. Bootstrap

    $ cd <app-name>
    $ rake db:bootstrap
    
  5. Launch Application

    $ script/server
    

Browse Store

http://localhost:xxxx/store

Browse Admin Interface

http://localhost:xxxx/admin

Is Spree Ready for Production?

I have been asked by several people about the status of the Spree project. I thought I would take a moment to address the current state of the codebase and whether or not its “production ready.”

In my opinion, you can use Spree in a real world commerce application right now. This is especially true if you are already committed to using Ruby on Rails. What are the drawbacks to doing this? The major drawback is that Spree is still “rough around the edges” so you will be doing a lot of the polishing yourself. For instance, if you want to have FedEx shipping calculations you will need to write/port your own. On the other hand, the basic admin functionality is working and the ActiveMerchant plugin support means you don’t have to worry about credit cards. In fact, I have already built two production sites with this software (under the old RailsCart name).

The only other Rails commerce application I am aware of is Substruct. The last I looked at this project it was fairly basic as well. So if you are going to start building your Rails project today, you have three choices.

  1. Write your own
  2. Use Spree as your starting point and do lots of custom coding
  3. Use Substruct as your starting point and do lots of custom coding

If you are uncomfortable with these three options then you should consider another application framework.

The good news is that Spree is rapidly improving with each passing day. The major effort right now is to rejigger the data model so that it is rock solid. There is nothing “wrong” with the current data model which is why it is ok to build a production Spree app with the existing software. We’re just trying to make the data model as “future proof” as possible. The more we improve the data model now, the less disruptive it will be for users to upgrade to subsequent versions of the software.

When will this refactoring be done? Our goal is to have our first beta release in time for RailsConf (May 29). This means we will pushing hard for another 6-8 weeks on all things data model. Once we go “beta” we be on the next level of stability. There will be a lot less coding needed to use Spree for your production site and we also hope to have a standardized approach for the custom code you do need to write.