Best Ruby On Rails eCommerce Platform: Spree Vs Solidus

Ruby on Rails has been a part of the eCommerce world since 2004 with the launch of an online snowboard store - Snow Devil. The technology has a lot to offer with quality solutions.

In 2006 the core Ruby on Rails team formed Shopify - a hosted eCommerce platform and in 2008 a RailsCart project came to life.

This article will focus on this project, later called Spree commerce and its competitor - Solidus. Are you wondering which one will be the best solution for your business? Read on.

What is Spree commerce?

Spree has become one of the most popular open-source eCommerce platforms built with Ruby on Rails. It is aimed at building large online stores, which is reflected in its flexibility and a wide variety of features. Spree is known for being lightweight when compared to platforms like Magento or Shopify due to its minimal approach to code design.

Spree consists of several different gems (modules) which allows full customization (e.g. Spree can be used in API-only mode to create a custom storefront or use spree_frontend module that will give you a default customizable Spree storefront).

What are the pros of Spree Commerce?

As a Ruby on Rails-based platform Spree has many advantages like a flexible architecture. Apart from that, its main advantages are:

What is Solidus eCommerce platform?

In 2015 Spree Commerce was acquired by First Data Corporation. It was announced that the open-source project will no longer be supported. As a response, Solidus was created after Spree version 2.4 was forked when the project was temporarily frozen.

In 2016 Spree got new backers - Spark Solutions and they are currently maintaining it.

Just like Spree, Solidus is an open-source eCommerce solution serving small and medium-sized businesses as well as complex storefronts and big retailers.

What are the pros of Solidus?

Among the advantages of Solidus we can say that since it was built on Spree 2.4 it is a better version of it. Besides that we have:

high-quality code - Solidus’ code can be used straight on production, the team of developers pay special attention to maintenance and updates

cartons - an innovative solution to simplify integration with shipping service

order grouping

stability - built based on knowledge of the brands that revolutionized eCommerce

scalability - created to handle complexity and make it easy to scale from a small business to enterprise

flexibility - Solidus gives you the ability to integrate anything and customize everything

customer support - Solidus is a community-centric and a community-driven platform

speed - Solidus is excellent for building MVPs and quick iterations

payment integrations with Stripe, PayPal and Skrill

Spree commerce vs Solidus

Community size

both solutions have a similar number of contributors on GitHub

From 2015 to the mid of 2018 Solidus contributors were more active - they made over 4,5k commits while Spree had less than half of this

The graph clearly shows that the developers contributing to Spree have been more active over the past 2 years while Solidus contributors are declining. This means Spree is the platform with more support as for now.

Integration and plugins

both Spree and Solidus have plenty of official extensions created by their communities

Spree also provides integrations instructions in multiple categories, however, some of the plugins are outdated (but Spree 4.0 release a lot of extensions were fixed)

Spree 4.1 release came with new mobile-first storefront (demo is available here) and it looks great compared to the default Solidus storefront

admin panel differences:

Solidus allows setting different prices for various currencies (Section Products -> Product details -> Prices). Spree does not have multi-currency support by default, but there is spree_price_books extension.

Spree allows creating prototypes for products (eg. bag prototype with material, size and type properties, which simplifies the process of creating new products - you don’t have to choose properties every time adding new bag)

Solidus supports promo codes that can be used for a specific number of times. It has the ability to generate multiple promo codes, which is not available in the default version of Spree Admin Panel. However, there is spree_multicode_promotions extension that provides this functionality

Solidus has a solution named Cartons, which simplifies integration with shipping services and grouping orders

In my personal opinion, Spree Admin Panel has a better UI

Summary

Solidus and Spree are both good solutions when you are looking for a platform that will allow creating custom commerce websites, providing you are familiar with Ruby on Rails. If not, platforms like Shopify or Magento would be a better option.

Your final decision depends on your preferences and needs since Solidus and Spree are going down in very different directions. If you want to see their plans for the future, you can check their Github milestones (Solidus and Spree).

If you are still on the fence about which one you prefer, both give you the possibility to deploy a demo version to Heroku with one-click (“Deploy to Heroku” button). The buttons are placed on the Solidus and Spree main GitHub pages in the Demo section.

And if all that sounds confusing, consider outsourcing the development of your eCommerce project to our team of expert web developers. We will make sure, the final product meets your needs and requirements that will lead your business to success.