This project was built in order to learn Rails, it is a mini e-commerce application built with Rails 4.2 and UI,model and feature testing with RSpec and Capybara. This was a week-long project that would simulate a real world experience where you inherit an existing code base in a language and framework that you are not familiar with. Functionality for certain features were implemented or bugs fixed including:
-
Feature: Admin authentication
-
Feature: Admin controls (add products and categories)
-
Feature: Order products
-
Feature: User registration and authentication
-
Feature: Check out using Stripe
-
Feature: Order confirmations and emails
-
Feature: Product Rating
-
Bug: Missing Admin Security
-
Bug: Checking out with Empty Cart
- 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/rake 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
Use Credit Card # 4111 1111 1111 1111 for testing success scenarios.
More information in their docs: https://stripe.com/docs/testing#cards
- Rails 4.2 Rails Guide
- PostgreSQL 9.x
- Stripe