Internet DEMO store in Ruby on Rails
Implement an Internet store DEMO meeting the following requirements:
User authentication and authorization;
User roles (guest, registered user, admin);
Product categories menu;
Product cart available with the ability of adding any quantity of the products;
The cart should persist if a guest logs in as a user;
The cart control page with the ability to remove items or change an item quantity (and the total must auto-refresh);
The order creation page requiring the user authentication and the cart not empty. The billing implementation is NOT required. Consider successful ordering as a purchase;
The admin area with the admin full access to the store objects;
All the actions (except changing the page) should be performed in-place - without the current page reload;
The frontend may include Bootstrap.