Ruby on Rails (aka Rails) is one of the most popular web application framework in the planet. It is designed to eliminate much of the drudgery of writing typical web applications by providing default settings that eliminate most configuration code (“convention over configuration”) and by providing a rich set of utility functions that make most common tasks simple. With Ruby as its core programming language – it makes it so much easier to write robust web applications that will scale as you need them to and be easy to maintain as you go forward.

This simple e-commerce application demonstrates CRUD operations using mongoDB and a simple implementation of a cookie based user authentication using Bcrypt. I specifically built this application to serve as a default template for building medium to large-scaled e-commerce applications.

Features:

Multi Vendor E-commerce – customers can register for an account and be able to upload and sell their products.

User Authentication and Account management.

Create Product, Edit Product, and Manage Products

Bulk upload product images, delete product images, and Set Features image of a product,

Possible Installation issues:

If you are experiencing problems with SQLite3, follow instructions here: https://github.com/hwding/sqlite3-ruby-win, If still not working, and you are getting errors similar to bellow:require: cannot load such file — sqlite3/sqlite3_native (LoadError)

Solution 1:

Go to your rails app then open gemfile.lock

Then look for the line “sqlite3” and change its version to the version you have installed in your computer.

If you encountered the following error:If you encountered the following error: C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/bcrypt-3.1.11-x64-mingw32/lib/bcrypt.rb:16:in `require’: cannot load such file — bcrypt_ext (LoadError)

Solution:

Uninstall all versions of bcrypt with “gem uninstall bcrypt” and select option 3 (if it exists),

And uninstall all versions of bcrypt-ruby gem with “gem uninstall bcrypt-ruby” and select option 3 (if it exists),

Then I install bcrypt using “gem install bcrypt –platform = ruby“

Then add this line gem ‘bcrypt’, ‘~> 3.1.11’ in Gemfile.

If the problem you are experiencing is not listed above – I suggest you get help on Stack Overflow.