/jungle-rails

Primary LanguageJavaScript

Jungle

A mini e-commerce application built with Rails 6.1 for purposes of teaching Rails by example. The purpose of this project was to simulate a real-world scenario by implementing bug fixes and new features to an existing codebase in an unfamiliar language. New features were tested using RSpec and Cypress.

Home Page

Products Page

Register Page

Login Page

Tech Stack

  • Ruby on Rails
  • Active Record
  • CSS (Bootstrap)
  • RSpec
  • Cypress

Dependencies

  • Rails 6.1 Rails Guide
  • Bootstrap 5
  • PostgreSQL 9.x
  • Stripe

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/rails 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

Database

If Rails is complaining about authentication to the database, uncomment the user and password fields from config/database.yml in the development and test sections, and replace if necessary the user and password development to an existing database user.

Stripe Testing

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

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