ShareTribe 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.
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.
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
- 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
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:
3. Install node modules:
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
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.