Erin Greenhalgh, Brian Sayler, Chris Soden
This project was created as a part of the curriculum for the Turing School of Software & Design.
This Rails application took a previous project, an single-tenant ecommerce web application, and pivoted it to a multi-tenancy application, implementing a bidding system instead of a typical cart-and-orders system. Users can bid on and win multiple items from different businesses. They can also create businesses to become business admins and monitor the item action for theri businesses. Platform admins have access to every business on the app and change business status between active and inactive.
You can find a live version of this application on Heroku at: https://litbids.herokuapp.com/
To set up a local copy of this project, perform the following:
- Clone the repository:
git clone https://github.com/seeker105/the_pivot
cd
into the project's directory- Run
bundle install
- Run
rake db:create db:migrate db:seed
to set up the postgres database and seed it with users, admins, businesses, items, and categories. - To navigate the site as a platform admin user username: jorge and password: password - To navigate the site as a business admin user username: jcasimir and password: password - To navigate the site as a regular user user username: user and password: password - If you would like to create your own database information do not rundb:seed
- There are items in the seed data with an auction end time in the past. There is a Heroku scheduler that will run a rake task to close open auctions every hour. To manually close these auctions up app startup, runheroku run rake auction:update_status
. - Run the application in the dev environment by running
rails s
Some of the main features of the app include:
- username:
user
- password:
password
- username:
business_admin
- password:
password
- username:
platform_admin
- password:
password
Platform admins can... | Screenshot |
---|---|
View a list of all businesses from their admin dashboard. From the platform admin dashboard, they can activate and deactivate businesses. |
We have implemented a rudimentary machine learning feature that predicts the final selling price of an item.
- The algorithm takes in a training set of data, with each data point representing one bid. The x value is the time elapsed since the auction start and the y value is the price of the bid.
- It then generates a trained function that can take in an x value, the amount of time elapsed between auction start and auction end, and returns a y value that represents the predicted price of the item at auction end.
- The function is describes a square root graph in which y is the square root of x. It was estimated that this shape of graph would roughly fit bit data.
This application depends on many ruby gems, all of which are found in the Gemfile
and can be installed by running bundle install
from the terminal in the main directory of the project.