Jungle

Jungle is a mini e-commerce application built with Rails 4.2 for purposes of teaching Rails by example.

The primary goal of this project was to get comfortable being uncomfortable, by inheriting an existing codebase and all its problems. Working on this project allowed me to apply previous learning tactics to research and become familiar with what used to be a foreign language, Ruby on Rails.

Realistic features and bug fixes were described, rather than shown through step-by-step instructions to simulate real-world scenarios.

Project Demo

"Register New User"
Register New User
"Create and Submit Order"
Add to Cart and Submit Order
"Browse Categories and Login to Admin Dashboard"
Browse Categories and Login to Admin Dashboard
"Admin Adding Product and Delete"
Admin Add and Delete Product

Additional Steps for Apple M1 Machines

  1. Make sure that you are runnning Ruby 2.6.6 (ruby -v)
  2. Install ImageMagick brew install imagemagick imagemagick@6 --build-from-source
  3. Remove Gemfile.lock
  4. Replace Gemfile with version provided here

Setup

  1. Run bundle install to install dependencies
  2. Create config/database.yml by copying config/database.example.yml
  3. Create config/secrets.yml by copying config/secrets.example.yml
  4. Run bin/rake db:reset to create, load and seed db
  5. Create .env file based on .env.example
  6. Sign up for a Stripe account
  7. Put Stripe (test) keys into appropriate .env vars
  8. Run bin/rails s -b 0.0.0.0 to start the server

Stripe Testing

Use Credit Card # 4111 1111 1111 1111 for testing success scenarios.

More information in their docs: https://stripe.com/docs/testing#cards

Dependencies