A mini e-commerce application built with Rails 6.1 for purposes of teaching Rails by example. Given an incomplete and "buggy" starter code, I was tasked with fixing and troubleshooting said bugs. Following this, new features were implemented on the app, such as a new "Add Categories" page for the Admin view, and showing relevant order information (e.g. the orders placed, the user's email, the order number) after an order was made. Tests were created using Cypress to ensure validity.
- Run
bundle install
to install dependencies - Create
config/database.yml
by copyingconfig/database.example.yml
- Create
config/secrets.yml
by copyingconfig/secrets.example.yml
- Run
bin/rails db:reset
to create, load and seed db - Create .env file based on .env.example
- Sign up for a Stripe account
- Put Stripe (test) keys into appropriate .env vars
- Run
bin/rails s -b 0.0.0.0
to start the server
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.
Use Credit Card # 4111 1111 1111 1111 for testing success scenarios.
More information in their docs: https://stripe.com/docs/testing#cards
- Rails 6.1 Rails Guide
- Bootstrap 5
- PostgreSQL 9.x
- Stripe