1. Introduction & Setup
1.1 What Is Vue?6 min
1.2 New Features in Vue 34 min
1.3 What You Should Know2 min
1.4 Environment Setup3 min
1.5 Course Files1 min
2. Vue Basics
2.1 How to Use Vue (Using the CDN)4 min
2.2 Creating a Vue App5 min
2.3 Data & Templates5 min
2.4 Click Events8 min
2.5 Conditional Rendering9 min
2.6 Other Mouse Events10 min
2.7 Outputting Lists (V-For)4 min
2.8 Attribute Binding5 min
2.9 Dynamic Classes5 min
2.10 Toggling Favs2 min
2.11 Solution - Toggling Favs2 min
2.12 Computed Properties5 min
3. The Vue CLI (for Bigger Projects)
3.1 Why Use the Vue CLI3 min
3.2 Using the Vue CLI5 min
3.3 New Project Walkthrough8 min
3.4 Vue Files & Templates9 min
3.5 Template Refs4 min
3.6 Multiple Components9 min
3.7 Scoped & Global CSS6 min
3.8 Props11 min
3.9 Emitting Custom Events6 min
3.10 Click Event Modifiers4 min
3.11 Slots9 min
3.12 Challenge - Creating Another Modal4 min
3.13 Using Teleport4 min
4. Project Build - Reaction Timer
4.1 Project Preview & Setup4 min
4.2 Starting a New Game9 min
4.3 Lifecycle Hooks11 min
4.4 Creating a Timer5 min
4.5 Custom Events With Data6 min
4.6 Challenge - Showing the Results Component3 min
4.7 Finishing Touches4 min
5. Forms & Data Binding
5.1 Forms Intro & Setup5 min
5.2 2-Way Data Binding5 min
5.3 Select Boxes3 min
5.4 Checkboxes7 min
5.5 Keyboard Events11 min
5.6 Challenge - Deleting Skills4 min
5.7 Submitting Forms10 min
6. Vue Router Basics
6.1 Why Use the Vue Router3 min
6.2 Vue Router Setup for New Projects10 min
6.3 Router Links7 min
6.4 Folder Structure6 min
6.5 Route Parameters6 min
6.6 Dynamic Links5 min
6.7 Redirects & 404's5 min
6.8 Programatic Navigation6 min
6.9 Lazy Loading Components2 min
7. Fetching Data
7.1 Using JSON Server7 min
7.2 Fetching Data9 min
7.3 Conditionally Showing Data4 min
8. Project Build - Simple Project Planner
8.1 Project Preview & Setup5 min
8.2 Home Template & Data6 min
8.3 Single Project Component7 min
8.4 Using Material Icons4 min
8.5 Deleting Projects9 min
8.6 Completing Projects12 min
8.7 New Project Form6 min
8.8 Adding New Projects5 min
8.9 Navbar Component4 min
8.10 Edit Project Component9 min
8.11 Challenge - Updating Projects5 min
8.12 Creating a Filter Nav9 min
8.13 Challenge - Filtering Projects5 min
9. The Composition API
9.1 Drawbacks of the Options API5 min
9.2 Composition API Basics7 min
9.3 Template Refs6 min
9.4 Using Refs for Reactivity7 min
9.5 Refs vs Reactive7 min
9.6 Using Computed Values7 min
9.7 Watch & WatchEffect6 min
9.8 Using Props in the Setup Function8 min
9.9 Lifecycle Hooks6 min
10. Async Code (& the Composition API)
10.1 Fetching Data in Setup()11 min
10.2 Reusable Composable Functions8 min
10.3 Creating Another Composable9 min
10.4 Creating a Loading Spinner7 min
10.5 Making a Web Form14 min
10.6 Challenge - Making a Post Request4 min
10.7 Future Async Lessons4 min
11. Routing (with the Composition API)
11.1 Routing Recap & Navbar5 min
11.2 Using UseRouter4 min
11.3 Using UseRoute2 min
11.4 Challenge - Tag View11 min
11.5 Creating a Tag Cloud16 min
12. Firebase Databases
12.1 Creating a Firebase Project4 min
12.2 Connecting to Firebase8 min
12.3 Firestore Collections5 min
12.4 Fetching a Collection of Documents10 min
12.5 Fetching a Single Document7 min
12.6 Adding New Documents4 min
12.7 Deleting Documents6 min
12.8 Timestamps6 min
12.9 Ordering Documents2 min
12.10 Intro to Real-Time Data12 min
13. Project Build - Live Chatroom with Authentication
13.1 Project Preview & Setup7 min
13.2 Firebase Setup4 min
13.3 Login & Signup View8 min
13.4 Switching Between Forms5 min
13.5 Firebase Auth Setup4 min
13.6 Creating a Signup Composable15 min
13.7 Outputting Errors3 min
13.8 Creating a Login Composable8 min
13.9 Setup Context & Custom Events7 min
13.10 Navbar Component4 min
13.11 Logging Users Out5 min
13.12 Getting the Current User9 min
13.13 Route Guards9 min
13.14 Waiting for Firebase4 min
13.15 Challenge - Watching the Current User4 min
13.16 New Chat Form9 min
13.17 Adding Messages10 min
13.18 Real-Time Listener Composable12 min
13.19 Creating the Chat Window7 min
13.20 Formatting the Date6 min
13.21 Challenge - Auto-Scrolling the Chat Window4 min
13.22 Unsubscribing from Real-Time Data6 min
13.23 Final Route Guard2 min
13.24 Testing the Chatroom1 min
14. Building & Deploying (Firebase Hosting)
14.1 Installing Firebase Tools6 min
14.2 Building a Vue App1 min
14.3 Deploying the App2 min
14.4 Making Changes & Redeploying3 min
15. Firebase Security Rules
15.1 What Are Security Rules?2 min
15.2 Paths & Rules Explained8 min
15.3 Requiring Auth (in Rules)2 min
15.4 Locking Down the API2 min
16. Project Build - Muso Ninjas
16.1 Project Preview & Setup7 min
16.2 Global Styles & Custom Font8 min
16.3 Firebase Setup4 min
16.4 Firebase Config File4 min
16.5 Reusing Firebase Composables11 min
16.6 Creating a Login View9 min
16.7 Making a Pending State7 min
16.8 Creating a Signup View7 min
16.9 Navbar Component9 min
16.10 Challenge - Logging Users Out4 min
16.11 Challenge - Conditionally Showing Links3 min
16.12 New Project Component8 min
16.13 Handling File Inputs11 min
16.14 Intro to Firebase Storage4 min
16.15 Uploading Images (Part 1)8 min
16.16 Uploading Images (Part 2)6 min
16.17 Creating Playlist Documents13 min
16.18 Challenge - Getting Real-Time Playlist Data5 min
16.19 Listing Playlists6 min
16.20 Navbar & Route Guard8 min
16.21 Playlist Details Route5 min
16.22 Redirecting to Playlist Details5 min
16.23 Real-Time Document Data8 min
16.24 Playlist Details Template10 min
16.25 Checking Playlist7 min
16.26 Deleting Playlists9 min
16.27 Deleting Images6 min
16.28 More on Firestore Rules8 min
16.29 Firebase Storage Rules7 min
16.30 Adding Songs to Playlists11 min
16.31 Updating Firestore Documents9 min
16.32 Liting Songs6 min
16.33 Deleting Songs5 min
16.34 User Playlists Route6 min
16.35 Firestore Queries10 min
16.36 Listing User Playlists4 min
16.37 Final Touches2 min
16.38 Building & Deploying2 min
16.39 Next Steps1 min
17. Extra JavaScript Lessons
17.1 Extra Javascript Lessons1 min
17.2 Imports & Exports5 min
17.3 Filter & Map Methods6 min
17.4 Spread Syntax2 min
17.5 Template Strings2 min
17.6 Arrow Function Syntax3 min
17.7 Fetch API & Promises5 min
17.8 ASYNC & Await3 min