At a Glance:
Solidus is an open-source e-commerce platform built with Ruby on Rails that provides a RESTful API, an admin area, and essential models, offering a modular backend for custom online stores.
Overview:
Solidus is a free, open-source e-commerce platform that serves as a complete foundation for online stores. It is built as a Ruby on Rails engine and originated as a fork of Spree. The project is structured into several gems—including solidus_api, solidus_backend, solidus_core, and solidus_sample—that can be used together as a full-stack solution, or developers can opt to use only solidus_core and build their own custom frontend, admin interface, and API. Solidus is designed for Ruby developers who need a customizable, community-driven commerce backend where they control the store’s architecture and data.
Key Decision Points:
Modular gem architecture: The platform is split into
solidus_core(models and classes),solidus_api(RESTful API),solidus_backend(admin area), andsolidus_sample(sample data), allowing developers to use only the necessary components.Custom frontend and admin option: Users can bypass the default admin area and RESTful API entirely by using only the
solidus_coregem and integrating their own interfaces.Rails-dependent deployment: Solidus must run within a Rails application, meaning adoption requires a team comfortable with the Ruby on Rails ecosystem.
Extension ecosystem: Additional features beyond the core platform are available through community extensions, which are listed separately and can be developed using the
solidus_dev_supportgem.
Core Features:
RESTful API: Provided via the
solidus_apigem for programmatic access to store data and operations.Admin backend: The
solidus_backendgem offers a default administrative interface for managing the store.Core commerce models: The
solidus_coregem contains essential e-commerce models, mailers, and base classes that form the platform’s logic.Sample data generation: The
solidus_samplegem includes sample data to aid in setup and testing.Turbolinks support: Optional support for Turbolinks can be enabled in the admin interface to improve speed, though it may conflict with extensions and customizations.
Use Cases:
Developers building a fully custom online store who need a foundation of commerce logic but want to replace the default API and admin interfaces with their own.
Ruby on Rails teams who need an open-source backend for an e-commerce application and prefer a modular, gem-based structure.
Community contributors and agencies extending core commerce functionality by writing and distributing extensions using the provided development support gem.
Open-Source Alternative Value:
As an open-source fork of Spree, Solidus gives developers access to a modular e-commerce backend built within the Ruby on Rails ecosystem. The project’s gem-based architecture means teams can adopt only the core models and skip the provided API or admin if they need a completely custom interface. The platform is community-maintained and supports extension development through the solidus_dev_support gem, allowing users to add features on their own timeline rather than relying on a single vendor.


