A mini e-commerce application built with Rails 4.2
https://ianduke-rails.herokuapp.com
The purpose of this project was to:
- Become familiar with Ruby and the Rails framework
- Learn how to navigate an existing code-base
- Use existing code style and approach to implement new features
- Gain experience handling feature and bug-fix requests
- User registration, login, logout
- Sold out badge if item quantity is zero
- Product ratings system
- Detailed order summary page
- Flash messaging styled with Bootstrap
- Automatic email notifications for user sign-up and order confirmation
- Product & category changes restricted to authorized users only (via AdminController)
- Heroku deployment
- Product image uploader integrated with Amazon S3 (AWS)
- Clone the repo to run locally
- 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
- Optional: Mailcatcher can be used to capture outgoing emails from the server. Should you wish to view the emails, run
gem install mailcatcher
and then typemailcatcher
to get started. - 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
- Stripe
- Bcrypt
- CarrierWave
- Fog