Best Rails Ecommerce Platform: Spree Commerce vs Solidus
- 21248 views
- 9 min
- Aug 31, 2017
Since 2015, when Spree declared the end of support for its open source ecommerce platform, the global Ruby on Rails business community has been confused by this move. When we get inquiries about creating online stores, the very first question we get from customers is “What’s up with Spree?”
The good news is that the Spree team has not only revived platform support but has also released a new version recently. In the meantime, the uncertainty surrounding Spree provided the basis for a forked ecommerce solution, Solidus.
To reply to the most pressing questions and pull together all the details as thoroughly as possible, we’ve prepared an overview of Spree and Solidus: their statuses, the opportunities they provide, their main differences, and their development trends and business uses.
But before going into details, let’s briefly touch upon the history of the ecommerce era for the Ruby on Rails business community.
Ruby on Rails and Ecommerce
The story of Ruby on Rails ecommerce starts in 2004 with an online store selling snowboards, named Snow Devil.
Two years later, in 2006, Snow Devil’s creators, who were also Ruby on Rails core team members, started a closed ecommerce platform called Shopify. By spring 2014, the number of stores built on Shopify had reached 200,000.
Meanwhile, in 2008 a project called RailsCart appeared, which then got the name Spree. A year later, the Spree team launched the platform’s website. Since October 2011, Spree has offered support for Ruby on Rails 3.0.
What is Spree?
Spree is an open source, multifunctional Ruby on Rails solution aimed at building large online stores. It’s pretty flexible, which allows to adjust this platform according to business needs and requirements, and it implements a wide range of features.
The adjustability and reliability of Spree are proved by figures. According to Spree’s data, over 45,000 stores worldwide have implemented this platform for their ecommerce projects.
In spite of such promising success, several key members left the project in 2015, and therefore Spree support was dropped for a while. Its suspension led to the appearance of Solidus, a fork of Spree version 2.4.
After almost a year of assumptions and confusion about Spree and its further support, Spree Commerce announced the release of version 3.0.0 along with a new roadmap in January 2016. This new Spree version and its updates provide Bootstrap support for frontend and backend, enhanced support for RoR, and many other useful features.
Since then, the Spree team has continued sharing regular releases, supporting migrations to updated versions, and encouraging the developer community to revive and actively contribute to the platform.
What is Solidus?
When the Spree team stopped investing in its open source platform, some previous Spree contributors from Canada (to be more precise, developers from Bonobos and Stembolt) started a new project called Solidus by forking Spree version 2.4.
Just like Spree, Solidus is an open source ecommerce solution that works equally well for small and medium-sized businesses, complex storefronts and high-volume retailers.
Forking any project is a big responsibility, which demands commitment and accountability. The current status of Solidus proves that its creators and developers are seriously committed to providing high-quality code:
The story of Ruby on Rails ecommerce starts in 2004 with an online store selling snowboards, named Snow Devil.
Nothing gets into master until it has two thumbs from core contributors who feel confident that it is production-ready code.
Solidus’s creators also encourage the developer and business communities not to accept their word, but rather check out their GitHub repository and see for themselves.
Due to Spree’s revival alongside the development of this high-quality forked platform, Ruby on Rails-based storefronts now have even more efficient options to build their online ecommerce projects.
What makes these platforms so great? Let’s investigate the opportunities they provide compared to other ecommerce solutions.
What Makes Spree Commerce and Solidus Similarly Efficient for Business
Since Solidus has nearly the same purpose as Spree, implementing either is easy and profitable for online stores.
- Faster development. When it comes to web development, the Ruby on Rails framework is much faster than other frameworks. What’s more, RoR, which was created for online business and is at the core of Spree and Solidus, is efficient in terms of resources and time.
- Full ownership. Since both Spree and Solidus are open source projects, you get ownership and control over all code assets. Additionally, both platforms set code quality and integrity as the top priority, verifying each piece of contributed code to ensure a stable, clean, and excellent codebase.
- Fully functional. Another great benefit Spree and Solidus offer compared to other ecommerce platforms is a complete set of features needed to launch a full-service online store. These features include extended payment methods, easy integration of various extensions, and convenient and straightforward ways to configure, add, replace, or remove any feature. Additionally, both platforms provide efficient means for improving online store performance: keyword targeting, product meta-descriptions, permalinks, and other SEO tools aimed at profitable and successful storefront operation and promotion.
- Modularity. Spree and Solidus allow you to efficiently and smoothly scale your online stores. Since both solutions are based on modern standards, they respond to market innovations, speed requirements, and corresponding modularity principles.
- Highly customizable. Modularity, in turn, ensures exceptional opportunities for customization and helps you meet business needs. At the same time, it keeps Spree and Solidus lean and flexible from the point of development and setting up. Easy extensibility also allows for smooth and safe upgrades. One key capability related to storefront or marketplace customization, and which is supported by Spree and Solidus, is a mobile-friendly approach. A mobile-friendly approach ensures that it’s easy to surf online stores with mobile devices due to responsive web design in particular.
- Mobile commerce support. These ecommerce platforms provide extensive support for mobile applications. Along with regular features like browsing products and placing orders, Spree and Solidus support social media app integration, transactional and marketing email services, and location services. Also, both support different modes of payment (including card, cash, or check), and ensure smooth and easy integration of those payment methods.
- Easy payment integration. Spree is bundled with more than 125 payment solutions, including Paypal, Stripe, and Redsys. Solidus also supports a collection of payment methods. Each of these provides support for more payment gateways than other platforms.
- Comprehensive APIs. Spree and Solidus also offer stable APIs, which is crucial for smoothly integrating third-party solutions. Another important point to mention is that a complete API kit is available for nearly any use case.
- Community. Both platforms’ contributors encourage and extend their open source communities. In 2016, Spree relaunched its regular conference, which is now called OpenCommerce Conf. Solidus gathers its contributors at Solidus Conf. The latest Solidus meetup happened in spring 2017. Both platforms also support active Slack channels with over 1000 participants each. To extend your development expertise, you can join either the Spree or Solidus channel.
Differences Between Spree and Solidus
These ecommerce platforms have a number of similarities, but what distinguishes one from the other? There are several peculiarities to point out.
There are a few innovative features implemented in the Solidus platform out of the box:
- Shipping integration. Cartons, a solution designed by the Solidus team, is aimed at smoothing shipping services integration and letting you group orders.
- Supply management. Solidus provides support for promo codes and specials that can be used multiple times.
- Better order management. An improved ordering system opens new opportunities for managing orders. Solidus lets the customer specify the reason for order changes or cancellations, and lets you set an amount of money and taxes to pay.
Since Solidus was forked from Spree 2.4 (not Spree 3.x, which marked Spree’s revival), from this moment these platforms are developing on different technical planes. Specifically, Spree 3.x updates include Bootstrap for frontend and backend, which isn’t supported by Solidus. And Solidus implemented a new authorization process, among other things.
Another point to mention is migration from Spree to Solidus, which has become less consistent due to the different paths these solutions are going down. Meanwhile, both platforms are sharing their upcoming plans. You can check out Solidus’s GitHub milestones and Spree’s release notes, as well as Spree’s latest version and its open source GitHub repository.
After all the opportunities and technical details described above, it’s logical if you still have the question:
Which Ecommerce Platform Should I Choose?
Since both solutions are fast, full-featured, and efficient for online business, you will benefit from using either. However, different business needs, goals, and use cases require a clear choice. We suggest choosing the platform based on your project's current status.If you’re planning an online store
When you’re at the stage of investigating available ecommerce platforms to pick the right one for your project, it’s pretty difficult to choose between two options that offer almost the same functionality.
Still, when we’re talking about open source solutions, it’s important to be sure that you can rely on continuous support. Although Solidus has a relatively younger community, compared to developers contributing to Spree, Solidus’s contributors are more active.
The graphs below illustrate these differences in terms of regularity and recency of new additions and commits:
As you can see, Solidus has had about 50k commits during 2017, while Spree has had only about half that amount. Therefore, we suggest taking a closer look at Solidus if you're going to launch a brand new ecommerce project.If you’re currently using Spree
If you’ve already built an online store with Spree, we suggest you keep using it and just upgrade it up to the most recent version. Since Spree is reviving its community and building promising development plans, you should continue to get support and updates for your project. Besides, in the matter of functionality and efficiency, Spree is about the same as Solidus..
However, migrating to Solidus is also an option. If you’re running a project on the earliest Spree version, you should upgrade it at least to 2.4. Upgrading will ensure smooth and easy migration, as Solidus is an improvement of Spree 2.4. In case you’ve already tried Spree 3.x and still would like to consider migration, Solidus offers version 1.1 for this purpose.
We’ve built online storefronts for different industries: beauty (Artdeco), healthcare (Medshop Express), household supplies (Hollar), and many others. We know that it’s not easy to choose an ecommerce platform that’s the right fit for a particular industry and project. We hope our assessment of features, latest updates, innovations, and upcoming development plans of Spree and Solidus will come in handy and guide you in your choice. If you have any questions or need more details, feel free to reach out to us.