Nuxt.js - Vue.js on Steroids
Build highly engaging Vue JS apps with Nuxt.js. Nuxt adds easy server-side-rendering and a folder-based config approach.
Start courseVue.js is an amazing JavaScript framework which you can use to build highly engaging user interfaces and single page applications.
Nuxt.js takes it to the next level!
It's a library for Vue.js (kind of a "framework for a framework") and it adds two major things to Vue.js:
- Server-side-rendering of your Vue app out of the box
- Easy Vue app configuration via folders and files
You'll of course learn all the details in this course but the most important takeaway is that Nuxt.js makes the creation of better, more optimized and more capable Vue apps much easier - and all of that whilst adding pretty much no overhead.
In this course, I'll teach you how to create Nuxt/ Vue apps from scratch! We'll build an entire course project and dive into the core features Nuxt.js offers.
By the end of the course, you'll have a complete Vue app, built with Nuxt.js, which can be rendered on the server (or as a static website!) and which is highly optimized.
The course will teach you ...
- ... what Nuxt.js exactly is and how it's connected to Vue.js
- ... how you use Nuxt.js to build better Vue apps
- ... everything you need to know about the "configure via folders & files" approach taken by Nuxt
- ... different build possibilities like SSR apps, SPAs or a static webpage
- ... how you build an entire project, including authentication, via Nuxt.js
- And way more!
Who this course is for:
- Anyone who wants to build engaging, (optionally) server-side-rendered Vue JS apps
- Anyone who wants to work with Vuejs and follow a minimal-configuration approach
- Anyone who wants to create static websites with
Course content
Section 1Getting Started
- Welcome & Introduction1:54
- What is Nuxt.js?2:59
- Understanding Server Side Rendering4:02
- Nuxt vs "Normal" Server Side Rendering1:33
- Join our Online Learning Community1:00
- Creating our First Nuxt App5:07
- Understanding the Folder Structure5:38
- What can we Build with Nuxt?2:34
- What's Inside This Course?2:06
- How To Get The Most Out Of This Course1:57
- Where to Find the Source Code1:00
Section 2Pages, Routing & Views
- Module IntroductionPremium0:55
- From Folders to RoutesPremium6:32
- Creating a Route with a Dynamic PathPremium5:24
- Adding Links & Navigating AroundPremium6:21
- Assignment - Pages & Routing (Problem)Premium1:34
- Assignment - Pages & Routing (Solution)Premium4:32
- Validating ParametersPremium5:57
- Creating Nested RoutesPremium3:11
- Layouts, Pages & Components - TheoryPremium1:30
- Adding a New LayoutPremium3:52
- Adding a Default Error PagePremium1:23
- Working with "Normal" ComponentsPremium7:51
- Styling Nuxt AppsPremium5:35
- Wrap UpPremium1:03
- Useful Resources & LinksPremium1:00
Section 3Project - Pages, Routing & Views
- Module IntroductionPremium1:13
- Creating the Main "Sections" (Pages)Premium7:58
- Adding External FontsPremium3:49
- Creating the Landing PagePremium5:50
- Splitting the Page into ComponentsPremium8:28
- Adding Static Assets - The Background ImagePremium2:33
- Adding the Header ComponentPremium5:54
- Vue Router vs. Nuxt RouterPremium1:29
- Working on the Post PagePremium4:33
- Creating an Admin SectionPremium12:36
- Preparing the BackendPremium10:20
- Improving the AppPremium2:37
- Adding a Separate Layout to the Admin AreaPremium2:50
- Useful Resources & LinksPremium1:00
Section 4Handling Data
- Module IntroductionPremium1:00
- Adding Dynamic DataPremium5:52
- Preparing Data on the Server-Side (through Nuxt)Premium9:08
- Assignment - Server-Side Data (Problem)Premium0:40
- Assignment - Server-Side Data (Solution)Premium2:31
- asyncData on Client & ServerPremium3:17
- A Closer Look at the Context ObjectPremium2:45
- Adding Async Data to a Single PostPremium5:31
- Handling Errors with a CallbackPremium1:55
- Using Promises in asyncDataPremium3:17
- Important: Restart the dev server in next lecture!Premium1:00
- Adding the Vuex StorePremium7:59
- Vuex, fetch() and nuxtServerInit()Premium9:26
- Wrap UpPremium3:12
- Useful Resources & LinksPremium1:00
Section 5Connecting our App to the Backend
- Module IntroductionPremium0:45
- Executing Code on the ServerPremium3:36
- Adding Firebase as a BackendPremium2:06
- Using Firebase to Store DataPremium4:55
- Fetching Data from the BackendPremium4:17
- Initializing our StorePremium2:54
- Fetching all PostsPremium5:09
- Assignment - Fetching Data (Problem)Premium1:24
- Assignment - Fetching Data (Solution)Premium3:42
- Editing PostsPremium4:32
- Synchronizing Vuex and the BackendPremium10:37
- Wrap UpPremium1:59
- Useful Resources & LinksPremium1:00
Section 6Nuxt - Config, Plugins & Modules
- Module IntroductionPremium0:57
- The Nuxt Config FilePremium6:28
- The Loading PropertyPremium3:28
- Working with Environment VariablesPremium5:37
- Manipulating Routing SettingsPremium4:34
- Animating Page TransitionsPremium3:17
- Adding PluginsPremium5:16
- Registering a Date FilterPremium2:10
- Understanding ModulesPremium8:08
- Wrap UpPremium0:46
- Useful Resources & LinksPremium1:00
Section 7Middleware & Authentication
- Module IntroductionPremium0:44
- What is Middleware?Premium6:46
- Adding User SignupPremium6:49
- Adding User LoginPremium2:53
- Storing the TokenPremium5:59
- Using the Token for AuthenticationPremium3:21
- Implementing a MiddlewarePremium4:10
- Invalidating the TokenPremium2:52
- Persisting the Token Across Page RefreshesPremium9:53
- Implementing CookiesPremium9:33
- Fixing the Logout TimerPremium6:19
- Adding the Logout FunctionalityPremium5:03
- A Quick BugfixPremium0:48
- Useful Resources & LinksPremium1:00
Section 8The Server Side
- Module IntroductionPremium1:13
- Adding Server Side MiddlewarePremium6:18
- Testing the MiddlewarePremium2:11
- Starting a Project with a Server Side TemplatePremium3:09
- Useful Resources & LinksPremium1:00
Section 9Building a Nuxt App
- Module IntroductionPremium0:31
- Universal vs SPA vs StaticPremium3:01
- Building our App as a Universal AppPremium2:02
- Building our App as a SPAPremium5:44
- Deploying a Universal AppPremium1:00
- Fetching Data in the SPAPremium1:00
- Building our App as a Static WebsitePremium3:21
- Improving the Generate ProcessPremium4:43
- Limiting the Amount of http RequestsPremium3:04
- Adjusting the StorePremium2:33
- Deploying SPAs and Static WebpagesPremium1:00
- Useful Resources & LinksPremium1:00
Section 10Round Up
- Course RoundupPremium0:55
Course instructor
Maximilian Schwarzmüller
As a self-taught professional I really know the hard parts and the difficult topics when learning new or improving on already-known languages. This background and experience enable me to focus on the most relevant key concepts and topics. My track record of many 5-star rated courses, more than 1,000,000 students worldwide as well as a successful YouTube channel is the best proof for that.
The most rewarding experience for me is to see how people find new, better jobs, build awesome web applications, work on amazing projects or simply enjoy their hobby with the help of my content. That's why, together with Manuel Lorenz, I founded Academind to offer the best possible learning experience and to share the pleasure of learning with our students.