
Introduction to the course and instructor
Course structure, live help and other resources
Sign up with cloud9 or codeanywhere, choice of free cloud-based IDEs
Getting familiar with cloud-based IDE
Start a new rails application
Save your work in an online code repository
Real-time comments feature demo added in section 5
Learn about Model-View-Controller structure of Rails web apps
Learn about the different types of testing commonly used in development
Install and setup the testing components necessary for this course
Text follow-up lecture to prior video
Build first feature test to model creating articles behavior
Text follow-up to prior video lecture
Create the new article template
Text follow-up to prior video
Complete new article feature
Text follow-up to previous video lecture
Add bootstrap to the application to help with front-end styling
Text follow-up to prior video
Add Guard so tests run automatically in the background
Text follow-up to prior video
Modify the default behavior of guard by updating the guardfile
Text follow-up to prior video lecture
Add validations to article model
Text follow-up to prior video lecture
Update display views and flash messages
Text lecture follow-up to prior video lecture
Create feature test for listing articles
Text follow-up to prior video lecture
Complete implementing listing articles feature
Implement showing an article feature
Text lecture follow-up to prior video lecture
Learn how to write request specs and deal with article not found exception
Text follow-up to prior video lecture
Build the edit feature
Text lecture follow-up to previous video lecture
Implement deleting an article feature
Text follow-up to prior video lecture
Extract code redundancies and refactor
Text follow-up to prior video lecture
Add users resource to the app by using devise
Text follow-up to prior video lecture
Implement users sign up feature
Text follow-up to prior video lecture
Update the existing views
Text follow-up to prior video lecture
Implement user sign-in feature
Text follow-up to prior video lecture
Update styling for devise views and use partials
Text follow-up to prior video lecture
Add the sign out feature to the app
Text follow-up to previous video lecture
Build one-to-many association between users and articles
Text lecture follow-up to prior video lecture
Fix article specs which now require updates due to new association
Text lecture follow-up to prior video lecture
Restrict access to app features based on user
Text lecture follow-up to prior video lecture
Restrict access at a controller level, higher level of security
Start working on comments feature and spec
Implement a way to enter comments
Text lecture follow-up to prior video lecture
Add comment model to the app
Text lecture follow-up to prior video lecture
Complete comments model, controller and more
Text follow-up to prior video lecture
Implement security for the app by adding restrictions to who can add comments
Text lecture follow-up to prior video lecture
Preview for the update of the comments feature to be real-time using ActionCable, video in lecture 8
Update the comments feature to be real-time using Rails 5 ActionCable
Text follow-up to prior video lecture
Introducing and previewing the workout application
Creating a new Rails 5 project for the workout application
The solution to the creation of the workout application homework
Setting up RSpec and Capybara for testing in the application
Homework to write 'creating homepage' feature spec
Solution to the 'creating homepage' feature spec
Text version of the home page feature spec
An assignment to add Guard to the project
Details of setting up Guard to run specs automatically
Using the home page feature spec to drive the building of the home page
Adding the Bootstrap 3 library to the project
Adding Devise to the project for user authentication
Homework to write a feature spec to sign a user up
Solution to the 'signing users up' feature spec
Implementing signing users up
Homework to write a feature spec for signing users in
Feature spec for signing users in
Implementing signing users in
Homework to write a feature spec fro signing users out
Writing a feature spec to sign users out.
Implementing signing users out
Styling Devise view templates using Bootstrap
Styling Rails error messages on the page
Showing/hiding the sign up, sign in and sign out links depending on the state of the application
Implementing hiding the registration and session links
Fix the styling of the page
Adding a custom stylesheet to the project
Introducing workout management
Writing the feature spec for creating an exercise
Implementing the new and index actions of the exercises controller
Implementing the exercise model and its association with users
Creating the form partial for creating a new exercise
Creating the 'create' and 'show' actions of the exercises controller.
Homework to write the feature spec for unsuccessful creation of an exercise
The feature spec for unsuccessful creating of an exercise.
Writing code to validate the exercise model
Adding date picker to the application
Listing all workouts on the page
Listing only workouts created in the last 7 days
Changing the hard-coded date in the feature spec with a dynamically generated date
Chart workout data using the D3.js library
D3.js code for the creating the workout chart
Writing the feature spec for editing an exercise
Implementing successfully editing an exercise
Writing the feature spec to delete an exercise
Implementing deleting an exercise
Working with users
Listing fullnames of members on the home page
Modifying the signup form to include first and last names
Adding validations to the user model
Fixing the broken specs as a result of the user model validations
Adding pagination to the home page to limit the number of users displayed on the page
Writing a feature spec for searching for a user
Implementing searching for users
Writing a feature spec to enable users to follow each other
Writing code to ensure a user does not follow himself or users he is already following
Display the list of a user's friends in the "Lounge"
Displaying a friends workout details
Implementing "unfollowing" users
Summary of implementing the exercise resource
Introducing chatting feature into the application
Implementing sending messages to friends
Creating a current room
Implementing the messages controller
Changing the layout of the lounge to accommodate the chatting box
Rails 5 with real-time features is finally here! Ruby on Rails 5 - Behavior Driven Development (BDD), RSpec and Capybara provides a thorough introduction to BDD and using it to build web applications using the popular Ruby on Rails framework. Students in my courses routinely land lucrative jobs in the web app development world just using material taught in my courses, including (but not limited to) being Teaching Assistants!
Why BDD to build web applications? The advantages are numerous, and feature specs used extensively in BDD read like plain English which allow end users (business analysts, development teams, client teams among others) and developers to easily communicate with each other using BDD tools. In addition, it is easy for the end users to write the features themselves.
This course is designed for students who have some basic Ruby on Rails or web application development experience who want to take their skills to the next level but have limited or no experience in BDD, automated testing or using tools like RSpec, Capybara, Guard.
Why should students who have Rails experience (any level) take this course?
- Rails 5 - the latest and greatest version of Rails along with it's real-time features applied to chat and comments displayed thoroughly in this course!
- Behavior Driven Development is the focus of this course, the principles of automated testing can easily transcend frameworks!
- RSpec and Capybara experience for automated testing is necessary as a Rails developer, this is covered thoroughly in this course!
- Emulating browser based user behavior to complete a business process from beginning to end, covered thoroughly in this course!
- This is a big resume booster, knowledge and usage of RSpec and automated testing is very important to potential employers and most of the Rails community uses this!
- Complete coverage in terms of features, ALL features are built on basis of automated testing specs, not just selective features
- Build two complex and functional web apps including the featured workout social media web app
Some other key aspects of this course are:
- Two functioning web apps with full feature coverage
- Rails 5.0 with ActionCable using cloud-based IDE
- Migrations, one-to-many and many-to-many associations
- much, much more!
Join today for the latest cutting edge resource in Ruby on Rails web app development