Planning the Application We're Going to Build
  • The Application We'll Build in the Course
  • Source code for the Application
  • Project Requirements Planning
Initial Application Build
  • Creating the App
  • Pushing the Application to a Remote GitHub Repository
  • Installing RSpec and Capybara Testing Frameworks
  • Using BDD to Build a Homepage
Creating a User with Test Driven Development
  • Installing and Configuring Authentication
  • Creating an Admin User Type Using Single Table Inheritance
  • Implementing Data Validations via Test Driven Development
Implementing the Ability to Post Overtime Requests
  • How to Use the Resource Generator for Posts
  • Creating an Index View Using Behavior Driven Development via Capybara
  • Creating a Seeds File to Generate Sample Data
  • Using BDD to Create Posts and Implement CRUD
  • Refactoring the Post Creation Process
  • Building a Relational Connection Between Users and Posts
Integrate an HTML/CSS Design and Layout
  • How to Implement the Twitter Bootstrap HTML/CSS Framework
  • Integrate the Basic HTML Layout
  • Creating a Rails Helper Method for Activating the Navigation Tabs
Listing Posts via Test Driven Development
  • Rending a List of Posts via BDD
  • Refactoring the Index Action to Follow Best Practices
  • How to Create a Custom Model Method to Generate a User's Full Name
Installing FactoryGirl for Test Data
  • Installing FactoryGirl for Test Data Creation
  • How to Refactor Tests to Include Factories
Implementing New CRUD Functionality into the Application
  • Implement Ability to Edit Posts via BDD
  • Adding a Button to Create Posts
  • Integrating the Ability to Delete Posts
Building Advanced User Interface Elements
  • How to Style the Application Forms
  • Implement Growl Notifications to Alert Users
  • How to Implement Growl Notifications for Form Validations
  • How to Style the Sign In Forms
Installing and Customizing the Admin Dashboard
  • Removing the Ability for Users to Register
  • Installing the Admin Dashboard via the Administrate Gem
  • How to Customize Administrate Admin Dashboard Forms
  • Customizing the Admin Dashboard Search Engine
  • Blocking Non Admins from Accessing the Admin Dashboard
Building out the Approval Workflow
  • Planning the Approval Workflow Feature
  • Implementing the Enum Component to Track Workflow Statuses
  • Customizing the Admin Dashboard to Show Approval Statuses
  • How to Implement Radio Buttons via BDD
  • Hiding Approval Form Elements from Non Admins
  • How to Hide Navigation Bar Elements from Users that Aren't Signed In
Creating a Permission Structure to Manage App Authorization
  • Installing Pundit for Application Permission Structure
  • Implementing Post Permissions
  • Implementing RSpec Tests for Permissions, Part 1
  • Implementing RSpec Tests for Permissions, Part 2
  • Adding Growl Notifications for Permission Alerts
  • Integrating Permission Structures to Hide Posts from Non Authorized Users Part 1
  • Integrating Permission Structures to Hide Posts from Non Authorized Users Part 2
Building Advanced Features in Rails
  • How to Build a Custom Database Query Scope in Rails
  • Refactoring the Integration Test Post Spec
  • How to Lock Records in Rails
  • Creating a Custom View Helper to Render Color Coded Labels
  • Hiding Elements in the View Based on the Permission Structure
  • Installing and Running the Puma Web Server
  • Adding Overtime Hours to Posts with Validations
  • Updating Integration Tests to Include Requested Overtime Hours
  • Styling the Show Page View Template
  • Integrating Icons into the Views for Edit and Delete Components
Implementing the Twilio API for Sending Text Messages
  • Installing the Twilio API Gem
  • Protecting API Credentials via the Dotenv Rails Gem
  • Building the SMS Tool Module
  • Creating a RSpec Stub for Sending SMS Messages
Creating a Custom Rake Task
  • Building a Custom Rake Task
  • Planning the SMS Rake Task Data Flow
  • Adding a Phone Number to Users with Validations
  • Implement Regular Expression Matcher for Phone Numbers
  • Finalize the Ability to Send Text Messages
Building the Audit Log Functionality
  • Planning the Audit Log Functionality
  • Generating the Audit Log Feature Using the Resource Generator
  • Creating a Factory for the Audit Log Using FactoryGirl
  • Integrating Data Validations with RSpec Tests
  • Updating the Seeds File for Accurate Sample Data
  • Implementing a Tab for the Audit Log Dashboard only Shown to Admin Users
  • Building the Initial Audit Log Dashboard
  • Blocking Non Admins from the Audit Log Index Page
  • Styling the Audit Log Dashboard
  • Implementing the Status Enum and Label Generator for Audit Items
Implementing AJAX Based Pagination
  • Integrating Pagination with Kaminari Gem
  • Styling Pagination Throughout the Application
  • Building AJAX Based Pagination Using JavaScript Calls
Building out a Monitoring Dashboard for Managers
  • Structuring the Page Flow for Admins vs Employees