Solidus alternatives and similar software solutions
Based on the "E-commerce" category.
Alternatively, view Solidus alternatives based on common mentions on social networks and blogs.
9.8 10.0 L3 Solidus VS MagentoAll Submissions you make to Magento Inc. ("Magento") through GitHub are subject to the following terms and conditions: (1) You grant Magento a perpetual, worldwide, non-exclusive, no charge, royalty free, irrevocable license under your applicable copyrights and patents to reproduce, prepare derivative works of, display, publically perform, sublicense and distribute any feedback, ideas, code, or other information (“Submission") you submit through GitHub. (2) Your Submission is an original work of authorship and you are the owner or are legally entitled to grant the license stated above. (3) You agree to the Contributor License Agreement found here: https://github.com/magento/magento2/blob/master/CONTRIBUTOR_LICENSE_AGREEMENT.html
9.7 9.9 L4 Solidus VS Spree CommerceOpen Source multi-language/multi-currency/multi-store E-commerce platform for Ruby on Rails with a modern UX, PWA frontend, REST API, GraphQL, several official extensions, and 3rd party integrations.
9.7 9.9 L5 Solidus VS SaleorA modular, high performance, headless e-commerce platform built with Python, GraphQL, Django, and React.
9.5 6.6 Solidus VS Reaction CommerceReaction is an API-first, headless commerce platform built using Node.js, React, GraphQL. Deployed via Docker and Kubernetes.
9.5 9.7 L1 Solidus VS OpenCartA free shopping cart system. OpenCart is an open source PHP-based online e-commerce solution.
9.4 10.0 L2 Solidus VS PrestaShopPrestaShop is an Open Source e-commerce platform, committed to providing the best shopping cart experience for both merchants and customers.
8.5 9.9 Solidus VS BagistoA Free and Opensource Laravel eCommerce framework built for all to build and scale your business.
8.4 9.5 Solidus VS Open Source POSOpen Source Point of Sale is a web based point of sale application written in PHP using CodeIgniter framework. It uses MySQL as the data back end and has a Bootstrap 3 based user interface.
8.2 6.6 L3 Solidus VS AttendizeAttendize is an open-source ticket selling and event management platform built on Laravel.
8.1 9.3 Solidus VS SharetribeSharetribe Go is a source available marketplace software, also available as a hosted, no-code SaaS product. For a headless, API-first marketplace solution, check out Sharetribe Flex: https://www.sharetribe.com/flex.
7.4 8.8 L3 Solidus VS Shopware Community EditionShopware 5 Repository - For Shopware 6 visit https://github.com/shopware/platform
6.5 10.0 L4 Solidus VS Open Food NetworkConnect suppliers, distributors and consumers to trade local produce. We're recruiting paid contributors, link below.
6.2 0.0 L2 Solidus VS OsclassWith Osclass, get your own classifieds site for free. Build your own Osclass installation and start advertising real estate, jobs or whatever you want- in minutes!
6.0 7.0 L4 Solidus VS TheliaThelia is an open source tool for creating e-business websites and managing online content. Repo containing the new major version (v2)
4.7 9.0 L3 Solidus VS Open ClassifiedsYclas Self Hosted is a powerful script that can transform any domain into a fully customizable classifieds site within a few seconds.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest. Visit our partner's website for more details.
Do you think we are missing an alternative of Solidus or a related project?
A free, open-source ecommerce platform that gives you complete control over your store.
- Visit our website: https://solidus.io/
- Read our Community Guidelines: https://solidus.io/community-guidelines/
- Read our guides: https://guides.solidus.io/developers/
- Join our Slack: http://slack.solidus.io/
- Solidus Security: mailing list
Table of Contents
- Supporting Solidus
- Getting Started
- Installation Options
- Developing Solidus
As a community-driven project, Solidus relies on funds and time donated by developers and stakeholders who use Solidus for their businesses. If you'd like to help Solidus keep growing, please consider:
Main Contributor & Director
At present, Nebulab is the main code contributor and director of Solidus, providing technical guidance and coordinating community efforts and activities.
Support this project by becoming a Solidus Ambassador. Your logo will show up here with a link to your website. Become an Ambassador.
Solidus is a complete open source ecommerce solution built with Ruby on Rails. It is a fork of Spree.
Solidus consists of several gems. When you require the
solidus gem in your
Gemfile, Bundler will install all of the gems maintained in this repository:
solidus_frontend(Cart and storefront)
solidus_core(Essential models, mailers, and classes)
All of the gems are designed to work together to provide a fully functional
ecommerce platform. However, you may only want to use the
combine it with your own custom frontend, admin interface, and API.
You can also try out Solidus with one-click on Heroku:
Additionally, you can use Docker to run a demo on your local machine. Run the following command to download the image and run it at http://localhost:3000.
docker run --rm -it -p 3000:3000 solidusio/solidus-demo:latest
To add Solidus, begin with a Rails 5.2, 6 or 6.1 application and a database configured and created.
In your application's root folder run:
bundle add solidus bin/rails g solidus:install
And follow the prompt's instructions.
Accessing Solidus Store
Start the Rails server with the command:
For information on how to customize your store, check out the customization guides.
As part of running the above installation steps, you will be asked to set an admin email/password combination. The default values are
[email protected] and
Instead of a stable build, if you want to use the bleeding edge version of Solidus, use this line:
gem 'solidus', github: 'solidusio/solidus'
Note: The master branch is not guaranteed to ever be in a fully functioning state. It is too risky to use this branch in production.
By default, the installation generator (
solidus:install) will run
migrations as well as adding seed and sample data. This can be disabled using
bin/rails g solidus:install --migrate=false --sample=false --seed=false
You can always perform any of these steps later by using these commands.
bin/rails railties:install:migrations bin/rails db:migrate bin/rails db:seed bin/rails spree_sample:load
There are also options and rake tasks provided by solidus_auth_devise.
You may notice that your Solidus store runs slowly in development mode. This
include. This can be disabled by adding the following to
config.assets.debug = false
To gain some extra speed you may enable Turbolinks inside of Solidus admin.
gem 'turbolinks', '~> 5.0.0' into your
Gemfile (if not already present)
//= require turbolinks // // ... current file content // //= require spree/backend/turbolinks-integration.js
CAUTION Please be aware that Turbolinks can break extensions and/or customizations to the Solidus admin. Use at your own risk.
- Clone the Git repo
git clone git://github.com/solidusio/solidus.git cd solidus
- Install the gem dependencies
Note: If you're using PostgreSQL or MySQL, you'll need to install those gems through the DB environment variable.
# PostgreSQL export DB=postgresql bin/setup # MySQL export DB=mysql bin/setup
docker-compose up -d
Wait for all the gems to be installed (progress can be checked through
docker-compose logs -f app).
You can provide the ruby version you want your image to use:
docker-compose build --build-arg RUBY_VERSION=2.6 app docker-compose up -d
The rails version can be customized at runtime through
RAILS_VERSION environment variable:
RAILS_VERSION='~> 5.0' docker-compose up -d
# sqlite docker-compose exec app bin/rspec # postgres docker-compose exec app env DB=postgres bin/rspec # mysql docker-compose exec app env DB=mysql bin/rspec
Accessing the databases:
# sqlite docker-compose exec app sqlite3 /path/to/db # postgres docker-compose exec app env PGPASSWORD=password psql -U root -h postgres # mysql docker-compose exec app mysql -u root -h mysql -ppassword
In order to be able to access the sandbox application, just make
sure to provide the appropriate
--binding option to
rails server. By
3000 is exposed, but you can change it through
SANDBOX_PORT=4000 docker-compose up -d docker-compose exec app bin/sandbox docker-compose exec app bin/rails server --binding 0.0.0.0 --port 4000
Solidus is meant to be run within the context of Rails application. You can easily create a sandbox application inside of your cloned source directory for testing purposes.
This sandbox includes solidus_auth_devise and generates with seed and sample data already loaded.
- Create the sandbox application
You can create a sandbox with PostgreSQL or MySQL by setting the DB environment variable.
# PostgreSQL export DB=postgresql bin/sandbox # MySQL export DB=mysql bin/sandbox
If you need to create a Rails 5.2 application for your sandbox, for example
if you are still using Ruby 2.4 which is not supported by Rails 6, you can
RAILS_VERSION environment variable.
export RAILS_VERSION='~> 5.2.0' bin/setup bin/sandbox
- Start the server (
bin/railswill forward any argument to the sandbox)
Solidus uses RSpec for tests. Refer to its documentation for more information about the testing library.
We use CircleCI to run the tests for Solidus as well as all incoming pull requests. All pull requests must pass to be merged.
You can see the build statuses at https://circleci.com/gh/solidusio/solidus.
Run all tests
ChromeDriver is required to run the frontend and backend test suites.
To execute all of the test specs, run the
bin/build script at the root of the Solidus project:
createuser --superuser --echo postgres # only the first time bin/build
bin/build script runs using PostgreSQL by default, but it can be overridden by setting the DB environment variable to
DB=mysql. For example:
env DB=mysql bin/build
If the command fails with MySQL related errors you can try creating a user with this command:
# Creates a user with the same name as the current user and no restrictions. mysql --user="root" --execute="CREATE USER '$USER'@'localhost'; GRANT ALL PRIVILEGES ON * . * TO '$USER'@'localhost';"
Run an individual test suite
Each gem contains its own series of tests. To run the tests for the core project:
cd core bundle exec rspec
rspec runs the tests for SQLite 3. If you would like to run specs
against another database you may specify the database in the command:
env DB=postgresql bundle exec rspec
Code coverage reports
If you want to run the SimpleCov code coverage report:
COVERAGE=true bundle exec rspec
In addition to core functionality provided in Solidus, there are a number of ways to add features to your store that are not (or not yet) part of the core project.
A list can be found at extensions.solidus.io.
If you want to write an extension for Solidus, you can use the solidus_dev_support gem.
Solidus is an open source project and we encourage contributions. Please read [CONTRIBUTING.md](CONTRIBUTING.md) before contributing.
*Note that all licence references and agreements mentioned in the Solidus README section above are relevant to that project's source code only.