Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Build 7 Real World Applications with Vue.js
Rating: 3.9 out of 5(34 ratings)
319 students

Build 7 Real World Applications with Vue.js

Build 7 professional, real-world, and fun-filled projects that you can use to jump-start your Vue.js career
Last updated 2/2019
English

What you'll learn

  • Learn to build more complex applications and to share data across components by creating a simple web shop.
  • Manage a real-time chat capability to integrate real-time communication with a backend service and build Vue .JS applications with push capability.
  • Implement three different ways of connecting to the server and routing data around your application
  • Use off-the-shelf libraries to get to the features you want more quickly

Course content

2 sections61 lectures6h 43m total length
  • The Course Overview2:28

    This video provides an overview of the entire course.

  • Setup and Requirements3:30

    In this video, we will cover all the packages we need to get going with our project of developing a small music library to manage our collection of songs.

    • Use Vue’s webpack bundle

    • Install other additional packages that we need to use

    • Import all our packages

  • A Basic Music Index – Creating Our First Views and Routes7:22

    In this video, we will set up the music collection and the first views to display all our songs.

    • Create our first component and import the song list

    • Add some styling to the song display

    • Make the song list sortable by column and ascending and descending.

  • Pagination and Splitting Up Components8:09

    Having too many elements rendered at once slows down any application. Pagination is a helpful tool to remedy that.

    • Check which parts of the application is too slow with Chrome’s DevTools

    • Split off the table body to a separate component

    • Paginate the list with an endless scroller

  • User Created Playlists – First Steps8:16

    Every music library needs to have custom playlists as nobody knows how to organize music better than whoever listens to it.

    • Create a new component for the playlist navigation

    • Add functionality to create playlists and slugify the titles for easier navigation

    • Persist new playlists to localStorage

  • Adding Songs to Playlists9:14

    We have playlists now but they’re still empty. So in this video we’ll add the functionality to add songs to playlists.

    • Add events and props to facilitate communication between the components

    • If the adding flag is active display a button to add songs to the playlists

    • Restructure the existing components to properly display the songs from playlists

  • Customizing and Managing Playlists5:33

    Any playlist should be properly manageable: renaming it, deleting it, and deleting songs from it.

    • Add an additional column for extra functionality

    • Add the ability to rename and delete playlists

    • Make it possible to delete songs from playlists

  • In Search of Songs with Web Workers5:19

    Nothing is more important for browsing music than being able to quickly find that one song you want to have right now. A searchbar is the way to go.

    • Include the web worker webpack plugin and create a basic web worker file

    • Provide the worker with the selected playlist and search through the list

    • Restructure the existing components to work with searched through song lists

  • Setup and Requirements2:00

    In this video we will look at the requirements needed to set up the TV Show tracker.

    • Initialize the project with “vueinitwebpack”

    • Prepare the default structure for the new project

    • Include all necessary modules

  • Integrating Fetch and Firebase3:15

    To make it easier to talk to the outside world we can add helper libraries for various external services.

    • Set up a firebase account

    • Add a helper file and set up firebase with the provided config

    • Create a small helper library for Fetch

  • Searching for Your Favorite Shows5:19

    The most essential part of a TV show tracker is being able to search for shows. So a search bar we shall implement!

    • Create a new component with a themed searchbar

    • Include the helper library and get the search results from the TV Maze API

    • Display the search result in our new component

  • Detail Page for Shows5:43

    We’ll need more than just a quick overview over found videos: detailed descriptions and all episodes of single shows.

    • Create a new component and the necessary routes to it

    • Call the API to get the detailed information for a single show

    • Display the description and detailed show runtime results

  • Subscriptions So that You Will Never Miss a New Season4:31

    Finally, the thing we’re actually here for: subscribing to TV shows to keep updated on their release schedule.

    • Add a subscription link and flag to each show in the search result

    • Create the new needed methods to support inter component communication

    • Push the subscriptions to our permanent storage

  • Subscriptions So that You Will Never Miss a New Season (Continued)4:25

    In this video, we will finish up the display and styling for the subscriptions.

    • Add the list to display the subscribed to shows

    • Style them to make it look proper

    • Place some helpful text messages for our users

  • Setup and Requirements3:39

    In this video, we will look at the requirements needed to set up a webshop.

    • Call ‘vueinitwebpack’

    • Import the bulma framework and fontawesome in the main.js framework

    • Add Firebase to your webapp

  • Administration and Authentication5:44

    In this video, we are going to create an admin interface for our webshop.

    • Prepare the data permissions in Firebase

    • Protect our routes from unauthenticated access

    • Add helper functions to our database library

  • Managing Products9:20

    In this video, we will add our products to the admin page and manage them.

    • Define the features for our products

    • Add some helper functions to the Database

    • Create a new component in the admin folder 'Product.vue'. Finally, create a working product administration page

  • Products on Display9:59

    In this video, we are going to build up a shop display.

    • Create a new file in the components base directory ‘Products.vue’

    • Add a hero header displaying the shop’s logo

    • Import the products component, and then a root route linked to the products component.

  • Vuex – Centralized State for Our Shop7:01

    In this video, we are going to use VueX which is Vue’s implementation of the Flux architecture.

    • Get to know the different parts of VueX

    • After you run the code, refactor the products index and detail page

    • Learn about the joy of deleting code and then apply it to your project

  • A Cart for Shopping9:55

    In this video, we are going to create a shopping cart.

    • To handle the cart, add mutators, getters, and actions to the VueX store

    • Add a cart widget to our shop

    • Add a link to the checkout method, and a warning message if the customer wants to checkout without any products in the cart.

  • Processing the Checkout6:19

    In this video, we will look at the last piece that will complete the project which is the checkout process.

    • Create the last helper functions and the order object

    • Prepare the permanent storage of new data and the handling of it

    • Add a country selection dropdown component

  • Processing the Checkout (Continued)12:11

    In this video, we will implement the checkout component.

    • Validate the customer information, payment and shipping options

    • Get an overview and confirmation window before finalizing your order

    • Add a thank you window.

  • Setup and Requirements4:08

    In this video, we will look at the necessary elements for creating a real-time chat application.

    • Get an overview of the basic setup and packages we're going to use

    • Initialize the project by calling `vueinitwebpack`

    • After creating a Firebase account, copy the settings for the helper library file

  • Registration and Authentication9:22

    To make our chat application something pretty exclusive we can add a rigorous process of requiring a valid email address from our users.

    • Set up some basic rules for the Firebase database

    • Create the authentication component and integrate it with Firebase’s authentication process

    • Set up a login and signup page for our users

  • Sending Messages to a Single Room7:05

    Now that there’s an authentication in front of the chat it’s time to add the actual chat itself.

    • Create the full-height page layout for the chat window

    • Add some basic functionality for sending messages

    • Listen to newly created messages and print them out in the message history

  • Creating and Joining Multiple Rooms9:21

    With the basic structure for chat rooms done we can expand that now to allow for multiple chat rooms.

    • Set up more complex firebase rules to secure access to it

    • Create a new component to act as a navigation menu for new rooms

    • Include a form to create new forms and set the creating user as the room’s owner

  • User Lists and Kicking Users9:28

    The last missing puzzle piece: the user list and the ability to kick users from your rooms.

    • Create the user list component as a menu

    • Add joining users to the corresponding database structure

    • If you are the owner of the current room, allow the process of forced removal of other users: kicking!

  • Test Your Knowledge

Requirements

  • Basic prior knowledge of JavaScript programming, Vue .js is required & web development is required.

Description

Are you willing to enhance your basic Vue.js skills with a real-world project to deepen your understanding of Vue.js. Then this course is for you!

Vue.js is an open-source JavaScript framework for building user interfaces and single-page applications.

With this practically oriented course, you will mainly focus on creating 7 real-world projects such as creating a miniature Spotify-like music library to manage your song collection, builds a tracker for TV shows, desktop and web RSS reader & much more. While building this project you will also learn basics of working with Vue.js, vue-router, and using plugin components integrate real-time communication with a backend service, which we can use to build Vue.JS applications with push capability.

By the end of this course, you will be able to build complex and large web applications with Vue.js & also implement your own real-world applications, troubleshoot errors with your Vue.js application.

Contents and Overview

This training program includes 2 complete courses, carefully chosen to give you the most comprehensive training possible.

The first course, Real World Projects with Vue.js you'll create a miniature Spotify-like music library to manage your song collection where you'll learn the basics of working with Vue.js, vue-router, and using plugin components. The next project builds a tracker for TV shows where we'll expand on our app-building experience by integrating an external API using the native fetch API. The third project is a simple web shop, which will introduce building more complex applications. We will add Vuex to our stack to share data and state across components. The last project is a real-time chat feature, with the ability to create, join, and manage various rooms. It will integrate real-time communication with a backend service, which we can use to build Vue.JS applications with push capability. By the end of the course, you will have the Vue.JS knowledge needed to implement your own real-world applications.

The second course, Practical Projects with Vue JS 2 will walk you through three complete practical projects in Vue.js that show the breadth of the framework, and also show how it is used practically via real-world examples. It fills a void not met by reference guides or cookbooks but adds value to both of those resources. You will not only understand how to use the framework, but also which choices were made, and why. These projects will act as jumping off points for you in your own projects.

About the Authors:

Daniel Khalil is the co-founder of Brainsware. He is a full-stack developer for 12 years now, self-employed freelancer since 2009. Most of his work lately is with Elixir (Phoenix) and Vue.js. He loves creating software that's usable, testable and maintainable.

Jack Herrington is a Principal Software Engineer at Nike working. He works in React, Vue, and AngularJS and has presented to a wide set of audiences on a variety of web technologies. He has written six books and hundreds of articles covering both the front- and back-end. Before Nike he was the UI Architect at Walmart Labs.

Who this course is for:

  • This course targets JavaScript developers, front-end developers, Vue .js developers, professional web developer to build amazing and complex reactive web applications with Vue .js & and solve real-world problems with their Vue .js applications.