ShareTribe is Ruby Based Open Source Marketplace software

ShareTribe Free Marketplace Software

Ruby Based Open Source Peer-to-Peer Marketplace Software

ShareTribe is an open source marketplace software and platform that takes you where you want to go. From idea to launch, profitability to growth and beyond.

Overview

Sharetribe is an open-source peer-to-peer marketplace platform to create and run online marketplaces with a complete feature set where your users can rent or sell goods, offer services online, or give things away for free. Sharetribe order types can create a marketplace type that best suits your needs. Sharetribe handles all the hosting, is easy to use and simple to customize.

Many successful startups grow and build a successful marketplace business with the Sharetribe platform. Sharetribe is written using the most popular programming framework for rapid and reliable application development, Ruby on Rails. Sharetribe follows a behavior-driven development approach. Sharetribe is upgraded every month to support the latest versions of the software tools and technologies. Sharetribe has a wide range of advantages.

Sharetribe helps businesses to create and manage custom online marketplaces for small to medium businesses. Sharetribe facilitates integration with analytics platforms. Moreover, it provides personalized profile pages for all vendors, displaying their listings, rating, and reviews from buyers. Sharetribe now delivers the most key features you would want from a marketplace platform right out of the box. Sharetribe’s solution:

  • supports all types of marketplaces
  • facilitate contact between users
  • provides a built-in payment system
  • includes tools for catalog management, categorizing, and filtering content
  • allows custom branding
  • works perfectly on mobile devices
  • includes an advanced payment system that supports 25+ currencies and 190+ countries
  • helps integrations with Google Analytics and payment processing gateways such as Stripe and Paypal.

Sharetribe includes a Custom Landing Page add-on and editor. Key features of Sharetribe include commission management, multi-vendor listings, and ratings or reviews management. Sharetribe develops advanced marketplace software for every business life cycle stage. Sharetribe provides vendor's portal, which enables providers to create new listings on their marketplace and customize product information. The platform source is available under the Sharetribe Community Public License.

System Requirements

For ShareTribe production installation I’d recommend that you go with Heroku. That way you get easily the scalability when needed, as well as handling of database e.g. Thinking-sphinx addon for indexing and searching. Of course, you can go with AWS directly and it requires following dependencies.

  • Ruby 2.6
  • Ruby on Rails 5.2.3
  • MySQL 5.7
  • Node.js 10.15 to compile JavaScript asset pipeline
  • React + jQuery
  • Deploy: Custom Deployment Script
  • Server: Heroku OR AWS
  • Image hosting: Amazon S3
  • Background job: delayed_job
  • RubyGems: Installation as dependency
  • Editor: Sublime Text or RubyMine
  • Imagemagick
  • Git

Features

ShareTribe provides a best and easiest way to start your own online marketplace solution. ShareTribe is simple to customize and it creates a platform where your users can rent or sell goods, services online. ShareTribe offers you the features that make it very fast for you to build your marketplace exactly the way you want. If you don't spot the feature you need, contact Containerize support to learn more about how to get it built and some of the key features are listed below:

  • Catalog Management
  • Category Management
  • Fee or Commission Management
  • Order Management
  • Payment Processing
  • Promotions Management
  • Returns Management
  • SEO Management
  • Shopping Cart
  • Vendor Portal
  • Open Source

Installation Instructions to setup the production environment

Installation on Ubuntu

Install and configure the necessary dependencies packages.

1. Get the code. Clone this git repository and check out the latest release:

git clone git://github.com/sharetribe/sharetribe.git
cd sharetribe
git checkout latest

2. Install the required gems by running the following command in the project root directory:

 bundle install 

3. Install node modules:

 npm install 

4. Create a database.yml file by copying the example database configuration:

 cp config/database.example.yml config/database.yml 

5. Add your database configuration details to config/database.yml. You will probably only need to fill in the password for the database(s).

6. Set secret_key_base and generate secret key

 rake secret  Add the following lines to config/config.yml: production: secret_key_base: # add here the generated key

Note: You can also set the secret_key_base environment variable, if you don't want to store the secret key in a file

7. Create the database:

 RAILS_ENV=production bundle exec rake db:create 

8. Initialize your database:

 RAILS_ENV=production bundle exec rake db:structure:load 

9. Run Sphinx index:

 RAILS_ENV=production bundle exec rake ts:index 

10. Start the Sphinx daemon:

 RAILS_ENV=production bundle exec rake ts:start 

11. Precompile the assets:

 RAILS_ENV=production NODE_ENV=production bundle exec rake assets:precompile 

12. Invoke the delayed job worker:

 RAILS_ENV=production bundle exec rake jobs:work 

13. In a new console, open the project root folder and start the server:

 bundle exec rails server -e production 

The built-in WEBrick server (which was started in the last step above) should not be used in production due to performance reasons. A dedicated HTTP server such as unicorn is recommended.

It is not recommended to serve static assets from a Rails server in production. Instead, you should use a CDN (Content Delivery Network) service, such as Amazon CloudFront. To serve the assets from the CDN service, you need to change the asset_host configuration in the the config/config.yml file to point your CDN distribution.

You need to configure a couple scheduled tasks in order to properly run your marketplace in production. See the Scheduled tasks documentation.

For production use we recommend you to upgrade only when new version is released and not to follow the master branch.

Setting your domain:

In your database, change the value of the domain column in the communities table to match the hostname of your domain. For example, if the URL for your marketplace is http://mymarketplace.myhosting.com, then the domain is mymarketplace.myhosting.com.

Change the value of the use_domain column to true (or 1) in the communities table.

If you wish to enable HTTP Strict Transport Security (recommended), set also the hsts_max_age column in communities table to a non-zero number of seconds. For instance 31536000 (1 year).

You can read about ShareTribe’s features in more detail on the platform’s site, but the idea here is that ShareTribe has everything our clients typically ask for.

Congrats. You have successfully installed ShareTribe peer-to-peer marketplace.