Nuxt 3.16 dropped and it's packed with goodies! In this episode, Alex and Michael break down all the cool stuff in this release that'll make your Nuxt development smoother.They dive into the new command to initialize a Nuxt application, the performance-game-changing lazy hydration support that'll boost your app's performance, and named layer aliases (that you've been waiting for). Plus, huge performance improvements, better error messages with Nitro 2.11 and debugging improvements that'll save you hours of head-scratching.But wait, there's more! The duo also geeks out over Nuxt UI v3, which (surprise!) now works with plain Vue.js too - not just Nuxt. Learn how it leverages Tailwind v4, introduces a sweet CSS variables-based design system, and builds on Reka UI primitives for better accessibility. And somehow, a discount code for Nuxt UI Pro* *cough DEJAVUE cough* gets snuck in there too!Enjoy the episode!Chapters(00:00) - Intro (00:54) - Nuxt 3.16 Feature Overview (01:27) - A new way to initialize Nuxt projects (07:06) - Lazy Hydration in Nuxt (16:05) - Named Layer Aliases (17:45) - Lines of Code vs. Complexity (20:16) - What a new Nitro minor brings to the table (21:33) - Fine-grained debugging options (23:25) - Nuxt Devtools v2 (25:47) - Faster module resolution (and faster boot up time) (27:39) - Using OXC to speed up component parsing (28:58) - Benchmark performance improvements (31:43) - Nuxt UI v3 (40:58) - Sneak peek at next weeks episode 👀 (41:17) - Suggest a new slogan! Links and ResourcesMastering Nuxt is out now!*Nuxt UI* Get 20% OFF Nuxt UI PRO* with discount code DEJAVUENuxt 3.16 blog postVue implementing Lazy HydrationNuxt Lazy Hydration PRLazy Hydration in-depthMore about Nuxt LayersRevamping data fetching in Nuxt PRNitro 2.11YouchHarlan's PR to speed up module resolutionOXC PRRolldown-viteCodSpeedTailwind VariantsYour HostsAlexander LichterBlueskyYouTubeWebsiteMichael ThiessenTwitterYouTubeWebsite---Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
In episode 52 of DejaVue (yes, it is a whole year), Dennis Adriaansen joins Michael and Alex to discuss data visualization in Vue.js. Dennis shares insights about building chart components, his experience with different charting libraries, and introduces his own Vue charting library. They explore topics like chart customization, performance considerations, and integrating charts into dashboards.The conversation also gets into broader topics such as open source sustainability, UI libraries, and backend integrations with Nuxt.Enjoy the episode!Our GuestDennis AdriaansenVue Chart LibraryXBSkyChapters(00:00) - Welcome to DejaVue (00:33) - A year of DejaVue (01:20) - Another announcement from Michael (02:52) - How did you get into programming? (07:07) - Would people choose Vue more if it was more popular? (11:37) - Podcasts and Hot Takes (19:03) - Why charts? (21:05) - How do you get started with building chart components? (23:39) - What was your use case for charts? (25:16) - What does Unovis provide? (29:31) - Why not other Chart Libraries? (34:34) - Performance of Charts (38:48) - A tiny Vapor update (40:40) - Which Charts does your library support? (44:10) - When do you do Open Source? (45:05) - Open Source Funding & Contributions (49:47) - What makes a good Dashboard? (52:03) - Which backend do you use with Nuxt? (58:41) - Do you have a preferred UI library? (01:01:43) - Where can people find you? Links and ResourcesDejaVue #051 - Vite Inside Out (with Matias "Patak" Capeletto)Mastering Nuxt*DejaVue #E049 - The Fusion of Laravel and Vue (with Aaron Francis)DejaVue #E041 - The Quadruple Migration (with Rijk van Zanten)D3.jsTremor Labschart.jsUnovisDennis' Nuxt error dashboardVapor PlaygroundReading Vue VaporVue Chrts (Dennis' Lib)Open Source PledgeBBF PatternzodvalibotStandard SchemaNuxt UI*Inspira UIReka UIYour HostsAlexander LichterBlueskyYouTubeWebsiteMichael ThiessenTwitterYouTubeWebsite---Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
Vite is amazing, I think we can all agree on that statement. But what is Vite actually!? Why is it so great, faster than webpack and the "de-facto standard of the web" already?Alex is joined by Vite Core Team member Matias Capeletto, better known as Patak, to talk about all these questions.Learn about the future of Vite, how it uses two bundlers under the hood and why almost every framework adopted it. Enjoy the episode!Enjoy the episode!Our GuestMatias "Patak" CapelettoViteWebsiteBlueskyChapters(00:00) - Chapter 1 (00:00) - Welcome to DejaVue (52:00) - How did you get into programming? (05:19) - Working on Open Source Full Time (08:16) - What is Vite? (18:48) - Why is Vite so fast? (22:19) - Rollup and ESBuild? (26:22) - VoidZero and Rolldown (34:08) - The Scope of Vite (36:27) - Vite Environment API (45:49) - Converging Frameworks (50:51) - Funding in Open Source (01:04:24) - React as "the last framework"? (01:10:18) - CRA Deprecation (01:24:41) - Where can people follow you? (01:26:09) - Last Words Links and ResourcesRolldownSnowpackrolldown/vitevinxiunpluginvite nodeMiniflareAll About VoidZeroDejaVue #044 - Our Predictions for Vue and Nuxt in 2025 (with Daniel Roe)Sunsetting Create React AppCRA PRcreate-tsrouter-appYour HostsAlexander LichterBlueskyYouTubeWebsite---Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
For episode number 50 (not 51 Alex!), Angular GDE and JetBrains DevRel Jan-Niklas Wortmann joins the show. Together with Michael and Alex they dive into Jan-Niklas' angle of being a DevRel, how framework communities are different and why people should give WebStorm a try. Beyond that, Volar and LSPs are also covered, as well as some new announcements!Enjoy the episodeOur Guest Jan-Niklas WortmannWebsiteWeekly Devs BrewBlueskyChapters(00:00) - Welcome to DejaVue (01:19) - Guest Intro (03:49) - Difference of Framework communities (08:56) - The Ups and Downs of DevRel (19:52) - Advice for people doing DevRel (25:05) - What is JetBrains? (27:46) - Reluctance to change Tools (31:01) - Why one should check out WebStorm (42:21) - TypeScript and AI in the IDE (48:06) - A web-dev newsletter for your coffee break (49:56) - Where can people follow you? Links and ResourcesKCDCDejaVue #E033 - Vue or React (with CJ Reynolds)Nuxt Project Template in WebStormDejaVue #E049 - The Fusion of Laravel and Vue (with Aaron Francis)DejaVue #E007 - From Code to DevRel and Leadership (with Marc Backes)Try the new WebStorm TS Engine nowJetBrains JunieThe Weekly Devs BrewYour HostsAlexander LichterBlueskyYouTubeWebsiteMichael ThiessenTwitterYouTubeWebsite---Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
In this episode, Michael and Alex are joined by Aaron Francis, software developer, content creator, and co-founder of Try Hard Studios. Besides covering Aaron's journey into programming, they dive into Fusion, a new library that Aaron has been working on which will fuse your Laravel backend together with your Vue frontend, allowing you to write PHP and Vue in the same file. The three developers dive deep into the technical details of Fusion, how it works under the hood, and also how the community reactions have been so far.Enjoy the episode!Our GuestAaron FrancisFusionTryHard StudiosBlueskyTwitterChaptersLinks and ResourcesLaravelTryHard StudiosFusionFusion Intro VideoAaron's Laracon EU 2025 TalkDejaVue #E029 - Inertia.js (with Joe Tannenbaum)VolarFusion Reddit PostNuxt Server BlocksDejaVue #E020 - Documentation and Migration: From Vue 2 to Vue 3 (with Natalia Tepluhina)DejaVue #E016 - The Future of Vue.js (with Evan You)Aaron's Year in Review postYour HostsAlexander LichterBlueskyYouTubeWebsiteMichael ThiessenTwitterYouTubeWebsite---Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
AI is a hot topic in the tech industry, but how does it intersect with Vue.js?In this special episode, Michael and Alex host a panel at Vue.js Nation 2025 and are joined by two amazing guests:Patrick van Everdingen, AI Solutions EngineerDaniel Kelly, Lead Instructor at Vue SchoolThe four developers discuss how AI and Vue can work together. Will we all lose our jobs to AI? How does AI might influence the job market and which tips for Vue.js developers are the most important to know regarding using AI in their projects and workflows? You'll get answers to all these questions, and more in this episode.Thanks againEnjoy the Episode!Our PanelistsPatrick van EverdingenCareerDeck AITwitterDaniel KellyVueSchoolBlueskyTwitterChapters(00:00) - Welcome to DejaVue (01:08) - Guest Introduction (02:29) - Will we all lose our jobs to AI? (09:24) - How have you integrated AI into your daily workflow? (14:31) - What is your best tip/advice for using AI with Vue.js? (18:03) - Does the role of documentation diminish with AI? (26:21) - How do framework and library authors need to adapt to AI? (31:05) - Where does environmental responsibility intersect with AI? (38:06) - LLMs and Privacy (43:10) - How will AI influence the job market? (45:36) - Where can people find you? Links and ResourcesDejaVue #E016 - The Future of Vue.js (with Evan You)DejaVue #E044 - Our Predictions for Vue and Nuxt in 2025 (with Daniel Roe)DejaVue #E033 - Vue or React (with CJ Reynolds)DejaVue #E023 - TypeScript and Content Creation (with Matt Pocock)DejaVue #E005 - From Side Hustle to Server Side Events (with Patrick van Everdingen)Vue.js Nation 2025: Daniel Kelly - Vue-doo Magic: AI Development TricksCursor (AI Editor)How Michael uses AI to quickly learn new librariesAnthropic suggesting to use XML tags for structuring promptsWebLLMDejaVue #E045 - Formkit and Hot Takes (with Justin Schroeder)Sign up for Frontend Nation 2025All talks from Vue.js Nation 2025Your HostsAlexander LichterTwitterYouTubeWebsiteMichael ThiessenTwitterYouTubeWebsite---Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
If you've listened to the last episode, you know what is coming next! It is time to get take a Vue at the other host of this podcast. Michael is asking Alex all around his past - from how we got into programming and web development, if university was worth it and how he got into the Nuxt Core Team.Also don't miss out how Minecraft is part of the history, what non-tech job Alex would do if programming wouldn't be in the cards, and why is GitHub account is over 14 years old.Enjoy the episode!Chapters(00:00) - Welcome to DejaVue (02:27) - What are you doing for work? (06:09) - What patterns and bad/best practices have you noticed? (11:18) - How is it being on the Nuxt team? (14:05) - Joining the Nuxt team (17:28) - How did you get into programming? (25:03) - From Gaming to Modding and Programming (30:02) - Getting into Web Development (31:11) - Founding a company (40:34) - Which courses from university stood out? (53:49) - What happened between uni and now? (01:00:12) - When did you start doing YouTube and why? (01:06:25) - Quickfire (01:06:38) - Why did you move to Amsterdam? (01:07:32) - Do you still Minecraft or other games? (01:08:47) - What topic you could give an impromptu talk on? (01:10:49) - Wrapping up Links and ResourcesJoin Vue.js Amsterdam 2025 - Get 10% OFF with the code "DEJAVUE"DejaVue #E046 - A Vue at Michael ThiessenDejaVue #E045 - Formkit and Hot Takes (with Justin Schroeder)DejaVue #E044 - Our Predictions for Vue and Nuxt in 2025 (with Daniel Roe)How to use the repository pattern in NuxtAlex' first Minecraft pluginAlex' Old Bukkit accountAlex' First Issue (actually his 2nd but who counts these!)SmartGain websiteBuilding an Association Manager PlaylistPaladinsCounter side project showcaseMastering Nuxt*Your HostsAlexander LichterBlueskyYouTubeWebsiteMichael ThiessenTwitterYouTubeWebsite---Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
The guest of this episode is one you've heard on here quite often - but do you also know him well? Together, we take a look (or Vue 👀) at Michael Thiessen, co-host of this podcast.Learn how his average day looks like, how he became a full-time content creator and find out what he did before getting into Web Development, plus insights on how he created his first course and dealt with impostor syndrome.Enjoy the episode!Chapters(00:00) - Welcome to DejaVue (00:39) - Concept of this episode (02:00) - What are you doing for a living? (02:51) - Why did you start writing content about Vue.js? (04:57) - From a blank page to a blog post (07:36) - How Michael became a full-time educator (12:37) - What was the fist course you created and why that one? (15:45) - Give Feedback! (19:54) - The key part of creating content (22:32) - How many hours do you work? (27:01) - What does an average day look like? (30:24) - The point to switch to being an full-time educator (35:10) - How did you get into programming? (40:17) - Computer Science vs Software Engineering in university (43:31) - Other learnings from university (46:43) - How did you find a job after university? (48:19) - Why Web Development? (49:46) - From React to Vue (51:20) - How did you start with public speaking? (52:30) - Quickfire Questions (52:38) - If not a developer, what would you be? (53:02) - Your favorite non-tech hobby? (53:43) - If you could choose any dev, who would you want to collaborate with and on what? (54:49) - Where can people follow you? (55:45) - Wrapping Up Links and ResourcesVueConf TorontoMichael's previous bandEDM music Michael produced a long time agoQuick Sort DanceLispPrologUnsightMastering Nuxt*Your HostsAlexander LichterBlueskyYouTubeWebsiteMichael ThiessenTwitterYouTubeWebsite---Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
Together with the FormKit author Justin Schroeder, Michael and Alex discuss the challenges of building forms on the internet.While it seems like a simple task, forms can be complex and pretty time-consuming. Especially when it is more than a Newsletter or Contact Form.Justin shares his experience building FormKit (multiple times), a form library for Vue.js, and how it can help developers build forms faster and more efficiently. From Accessibility to actually covering edge cases such as form hydration and repopulation!Of course, we couldn't let Justin go without talking about some of his hot takes from Vue in 2024, over to Vapor Mode, and Tailwind.Enjoy the episode!Our GuestJustin SchroederBlueskyWebFormKitChapters(00:00) - Welcome to DejaVue (00:23) - Guest Introduction (01:15) - How did you get started in programming and Vue.js? (06:02) - Frameworks as resource for learning patterns (11:21) - The biggest reason to change a framework (14:12) - Which framework would you choose for a new project? (16:26) - SolidStart as a fresh start for a framework? (17:56) - Adapting and managing expectations as a maintainer (23:14) - Why Forms are hard and how does FormKit came up? (32:26) - Accessibility for complex forms and components (44:37) - How does FormKit sustain itself? (49:13) - Physical to digital Forms with AI (53:21) - Do you have to utilize AI as a Developer? (01:03:42) - Justin's Hot Takes 🌶 (01:04:21) - Vue in 2024 (01:06:22) - Vapor Mode (01:12:34) - Tailwind and headless components (01:24:42) - Wrapping up Links and ResourcesFormKitDejaVue #E039 - Migrating a SaaS from Nuxt 2 to Nuxt 3 (with Sumit Kumar)WCAG 2.0KickStart*Inspira UIMotion-VueFramer Motion for VueAddy Osmani - The 70% problem: Hard truths about AI-assisted codingVue SSR BenchmarkYour HostsAlexander LichterBlueskyYouTubeWebsiteMichael ThiessenTwitterYouTubeWebsite---Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
After our recap episode on 2024, it is time to look into 2025 - and share our predictions and even some rather spicy hot takes what developers can expect in 2025. Of course, Michael and Alex once again have the Nuxt team Lead Daniel Roe on the show to get some insights on his takes as well! Find out more about their thoughts on Vue Vapor, Nuxt 4, Conferences, Alien Signals, Vue 4, Nitro and many more topics that will be (most likely) relevant in this year.While the focus is mainly Vue and Nuxt, topics around general Web Development are covered too - from AI to Open Source and the job market in 2025.Enjoy the Episode!Our GuestDaniel RoeBlueskyWebYouTubeTwitchChapters(00:00) - Welcome to DejaVue (01:21) - Daniel's Injuries and Accessibility (03:13) - Fake teeth and other foolery (04:10) - Biomodding your teeth (06:25) - Is 2025 the year of Nuxt 4? (11:49) - React Metaframeworks and the year of Nitro? (17:28) - Course Announcements (21:41) - No more Vinxi in 2025? (26:03) - A prediction from the future (31:14) - Will 2025 shift Open Source Sustainability... (32:08) - ...driven by the WordPress incident? (36:37) - Why hasn't there been a WordPress fork? (39:10) - More amazing Conferences coming in 2025? (42:55) - Vue Vapor in 2025 (47:56) - The Year of AI Agents? (53:10) - Alien Signals Adoption in the JS World (54:14) - Vue 4 coming in 2025? (55:17) - A Unified JavaScript Toolchain in 2025? (56:12) - The Developer Job Market in 2025 (01:00:21) - What are you predictions for 2025? (01:00:56) - Daniel's info and Alex' last prediction Links and ResourcesAccessibility ChartState of JS SurveyAlex' Video on State Of JS through the Vue lenseDaniel's upcoming React to Nuxt courseMastering Nuxt (3 at the time of recording)*Alex' upcoming Nitro CourseBadass Courses' Course Builder RepoVinxiNikhil's tweetNIH tendencyXKCD standardsthanks.devOpen Source PledgeMadVuePragVueKazupon's Tweet on Vapor with other FrameworksMeta on Large Concept ModelsYour HostsAlexander LichterBlueskyYouTubeWebsiteMichael ThiessenTwitterYouTubeWebsite---Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
Of course, we can't fully start into 2025 with a little ReVue of the past year. And to make sure to catch all the highlights, Alex is joined by Daniel Roe, full-time open source developer and lead of the Nuxt team to go through some notable events of 2024 in the Vue and Nuxt ecosystem.In addition to the shining moments of 2024, don't miss out a deep dive into web fonts, learn why Nuxt 4 isn't out yet if you didn't know already and maybe even get a slight glimpse into 2025 and Nuxt 5.Enjoy the Episode!Our GuestDaniel RoeBlueskyWebYouTubeTwitchChapters(00:00) - The Year in ReVue (01:08) - Daniel's favorite release in 2024 (02:20) - How did Nuxt Fonts evolve in the past year? (03:58) - Benefits of Nuxt Fonts (05:38) - Possible Future Improvements of Nuxt Fonts (07:45) - What devs do wrong with fonts (09:29) - The one CI tip saving you troubles (11:01) - Vue 2 going EOL (13:20) - Vue's development progress in 2024 (14:31) - Alien Signals (17:24) - Tooling in Vue (19:20) - Triaging the ecosystem (23:53) - Our favorite Nuxt.js improvements (30:25) - Nuxt 4 (37:14) - Nuxt 2 going EOL and Nuxt Bridge (41:51) - Incremental improvements in the Vue Ecosystem (45:24) - The Open Source Pledge (47:45) - VoidZero (49:30) - Our Favorite Vue.js Features in 2024 (52:19) - Quickfire (54:22) - Honorable Mentions (54:47) - Your feeling about the Vue and Nuxt ecosystem in 2024 (55:51) - Wrapping Up Links and ResourcesJoin Vue.js Amsterdam 2025* and get 10% off with code DEJAVUENuxt FontsDaniel's Talk at Vue Amsterdam 2024FontainePostCSS Font MagicianAlien SignalsTC39 Polyfill Alien Signals PRVolarVue TSC as part of the language toolssharedPrerenderData VideoUpgrade to Nuxt 4 via compatibilityVersion alreadyNitroSSR Logs in the BrowserNuxt 3.15.2Nuxt BridgeVue MacrosViteElkStackBlitzxkcd 2347: DependencyuseId(Lazy) HydrationdefineModelHydration message improvements on Vue 3.4Reactive props destructurev-bind shorthandNuxt OG ImageUnoCSSVue is the fastest SSR FrameworkInspira UI ComponentsYour HostAlexander LichterBlueSkyYouTubeWebsite---Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
In this episode, Michael talks with Adam Jahr, Founder of Vue Mastery, all about creating technical content - and how this is relevant for you as a developer.Tune in and figure out how Adam founded Vue Mastery, what his biggest learnings from his Coding Bootcamp times were and learn key tips that can set your content apart from others!And as a bonus - learn what creating content, regardless the format, has to do with Harry Potter or Lord of the Rings.Ready? Then wait no furtherEnjoy the Episode!Our GuestAdam JahrVue MasteryAdam on XVueMastery on YouTubeChapters(00:00) - Welcome to DejaVue (01:03) - Why creating technical content is key (02:16) - What is Vue Mastery? (05:52) - Biggest learnings from Coding Bootcamp times (09:46) - Getting in touch early with the Vue community (15:03) - Splitting time between marketing and creating content (18:40) - Importance of different Creators and learning Formats (20:07) - How to reach and teach developers (31:41) - The same framework applied to sales (33:19) - Applying it to your own stuff (34:44) - A glimpse down the rabbit hole (39:22) - Creating an open loop (43:32) - Music Production and Sourdough (47:47) - Show them the "Why" (52:45) - Isolating focus (58:26) - Magic Move and Animations (01:03:18) - Where can we follow you Adam? (01:04:19) - Wrapping up Links and ResourcesJoin Vue.js Amsterdam 2025* and get 10% off with code DEJAVUEHero's JourneyVue MasteryMichael's Composable Design Course (out now!)DejaVue Episode #020 - Documentation and Migration: From Vue 2 to Vue 3 (with Natalia Tepluhina)Your HostMichael ThiessenTwitterYouTubeWebsite---Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
To start the year light and fun, Michael and Alex are joined by Rijk van Zanten, the creator of Directus.Of course we talk about his journey into web development, the Vue.js ecosystem, what Directus is and why he chose Vue over other frameworks for it's extensible frontend.Further, Rijk shares his thoughts on the Vue.js job market and how his "Quadruple Migration", over to the Composition API, Pinia, Vue 3 and Vite, went. As a cherry on top - this all started *very* early in the development cycle of Vue 3!But the fun doesn't and there because Rijk comes with the one or the other hot take on topics like TypeScript and whether our libraries will be worse for JavaScript developers, testing, and many many other scenarios.Enjoy the Episode!Our GuestRijk van ZantenDirectusBlueSkyWebChapters(00:00) - Welcome to DejaVue (00:47) - How did you got into Web Development and Vue? (03:10) - Does Vue appeal to a certain kind of people? (05:35) - The web as the primary platform (07:47) - What is Directus? (10:34) - Why Vue.js and not React for Directus? (18:28) - Jobs for Vue vs. React Developers (26:33) - Green Flags for Hiring Candidates (27:19) - Composition API and Pinia from 0.0.1 (39:02) - Breaking changes and Migrating from early versions (44:28) - Testing when Prototyping - Unit and E2E (53:11) - The right level of Testing for the project (55:56) - Mutation Testing (59:09) - Does TypeScript makes us writing worse JS libraries? (01:09:09) - Dealing with Legacy and EOL (01:18:38) - Where can people Follow you? (01:19:42) - Wrapping up Links and ResourcesJoin Vue.js Amsterdam 2025* and get 10% off with code DEJAVUEConTejas Podcast with AlexMichael's Clean Components ToolkitMichael's Upcoming Composable Design CourseDaniel Roe's React To Nuxt CourseAlex's Next to Nuxt Migration in less than 1h VideoStryker Mutation Testing FrameworkDejaVue Episode #038 - Self-founding and growing a Nuxt-based SaaS (with Sumit Kumar)Your HostsAlexander LichterTwitterYouTubeWebsiteMichael ThiessenTwitterYouTubeWebsite---Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
This DejaVue episode comes as a little special! As a belated Christmas present, we got everything, literally everything that was discussed on this podcast about one big topic: Composition API vs. Options API.A lot of our previous guests had their own takes on the two APIs - and some might surprise you! So, why not tuning in and hear fifteen people talk about their opinions, insights and suggestions when it comes to using their preferred API in Vue - and why.Oh, and yes - there is even a little spoiler for next weeks episodeEnjoy the episode! Chapters(00:00) - Welcome to the DejaVue Special (00:37) - Evan You (18:04) - Natalia Tepluhina (26:09) - Tim Benniks (27:11) - Joe Tannenbaum (30:14) - CJ Reynolds (37:33) - Simone Cuomo (41:28) - Sumit Kumar (48:29) - Jakub Andrzejewski (49:54) - Rijk van Zanten (53:47) - Eduardo San Martin Morote (57:46) - Vue Toronto Panel (58:18) - Wrapping Up Links and ResourcesOrganizing Composition API Code VideoMichael's Inline Composable ArticleScreenshot CAPI OAPI ComparisonEvan's Migrated FilePiniaReferenced EpisodesDejaVue #E015 - Ten Years of Vue.js (with Evan You)DejaVue #E020 - Documentation and Migration: From Vue 2 to Vue 3 (with Natalia Tepluhina)DejaVue #E009 - Vue.js in Large Applications (with Tim Benniks)DejaVue #E029 - Inertia.js (with Joe Tannenbaum)DejaVue #E033 - Vue or React (with CJ Reynolds)DejaVue #E032 - Getting Started with Vue.js (with Simone Cuomo)DejaVue #E039 - Migrating a SaaS from Nuxt 2 to Nuxt 3 (with Sumit Kumar)DejaVue #E036 - Secure your Vue and Nuxt Applications (with Jakub Andrzejewski)DejaVue #E041 - The Quadruple Migration (with Rijk van Zanten) is coming up NEXT WEEKDejaVue #E030 - Pinia and Data Loaders (with Eduardo San Martin Morote)DejaVue #E037 - VueConf Toronto Panel (with Evan You, Daniel Roe, Sigrid Huemer and John Leider)Your HostsAlexander LichterBlueSkyTwitterYouTubeTwitchWebsiteMichael ThiessenTwitterYouTubeWebsiteLinks marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
The second half of the conversation with Sumit Kumar focuses all on the technical side of his SaaS.At first, Michael and Alex talk about Sumit's experience with the migration from Nuxt 2 to Nuxt 3 - and we all know this isn't an easy one. Further, the Composition API vs. the Options API, as well as structuring code and writing good composables are discussed.And of course, the question if Sumit considered rewriting the application based on another tech stack was part of it too - he had really good reasons why he didn't! Time to tune in.Enjoy the Episode!Our GuestSumit KumarParqet (GER)BlueSkyTwitterYouTubeChapters(00:00) - Welcome to DejaVue (00:44) - How did your Nuxt migration go? (02:32) - When did you start considering migration and why not earlier? (04:42) - Composition API only packages and other pitfalls (06:46) - Steps that you tried out (10:11) - No such migration anymore (10:28) - Time frame of the migration (12:07) - What is CAPI and what stays OAPI (15:31) - Getting acquainted with the Composition API (18:28) - Structuring your Script part (26:00) - Reusing Composables (30:56) - Changing the Tech Stack? (38:35) - Wrapping Up Links and ResourcesFill out the State of Vue.js SurveyPiniaMichael's Inline Composable ArticleOrganizing Composition API Code VideoMichael's Composable Design Patterns Course (Early Access)Screenshot CAPI OAPI ComparisonEvan's Migrated FileDejaVue #E020 - Documentation and Migration: From Vue 2 to Vue 3 (with Natalia Tepluhina)DejaVue #E010 - Design Patterns in Vue.jsYour HostsAlexander LichterTwitterYouTubeWebsiteMichael ThiessenTwitterYouTubeWebsite---Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
In this episode of DejaVue, Alex and Michael are joined by Sumit Kumar, the founder of Parqet.Sumit shares his journey from getting into Web Development and Vue.js over to working at Stripe and eventually founding Parqet, a (German) portfolio tracker SaaS. Topics covered in the first part of our conversation include a lot of business insights, such as the transition from being a developer to being a founder, the challenges and benefits of bootstrapping, as well as the importance of marketing.If you are interested in the business side of things, you definitely should not miss out.Enjoy the episode!Our GuestSumit KumarParqet (GER)BlueSkyTwitterYouTubeChapters(00:00) - Welcome to DejaVue (01:28) - How did you get into Web Development and Vue.js? (04:53) - Converging Frameworks (07:39) - Previous Work Experiences and joining Stripe (10:15) - What did you learn from working at Stripe? (14:05) - The Front Page Test (16:39) - How did your start Parqet? (20:12) - The Transition from Developer to Founder (23:02) - Can you focus only on Programming as a Founder? (27:03) - Finding a CEO instead of being one (29:25) - Marketing is Half the Job (30:24) - How did Parqet grow? (39:56) - Why don't you share your MRR anymore? (43:15) - Why did you choose to bootstrap (49:26) - Niche down strategy (51:47) - Dealing with GDPR and localization (01:00:40) - Wrapping up Links and ResourcesFill out the State of Vue.js SurveyAnd also the State of JS Survey 🙌Mastering Nuxt 3*DejaVue #E031 - All About VoidZero (with Evan You)Parqet (GER)The EMyth RevisitedMAKEThe Launch Livestream of Parqet fka. Tresor One (GER/ENG)Minimal Empires (GER)VerhältnismäßigkeitHow to center a divYour HostsAlexander LichterTwitterYouTubeWebsiteMichael ThiessenTwitterYouTubeWebsite---Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
For the first time, the DejaVue Podcast goes "live"! Alex and Michael met up at VueConf Toronto and could do a whole DejaVue episode on stage. Of course, this is even more fun with guests, so they are joined by four speakers of the Conference.Evan You, Creator of Vue, Vite, Rolldown and Founder of VoidZero,Daniel Roe, Lead of the Nuxt Team,Sigrid Huemer, Software Engineer at Sentry, andJohn Leider, Creator of Vuetify.But that's not the end! The audience could ask questions to the whole panel, while the DejaVue hosts curated and selected the most interesting ones.Learn more about how all of the panelists started with Open Source, which were their biggest achievements, how Impostor Syndrome influenced them, what talks they'd be interested in as speakers and much moreEnjoy the Episode!Our PanelistsEvan YouVue.jsViteVoidZeroBlueskyDaniel RoeWebsiteYouTubeBlueskySigrid HuemerWebsiteBlueskyJohn LeiderWebsiteTwitterChapters(00:00) - Welcome to DejaVue Live (00:38) - Introducing our panelists (02:29) - How did you get into Open Source? (06:23) - What side projects are you working on? (11:40) - Do you feel the impostor syndrome? (18:53) - What were your biggest achievements so far? (22:42) - How to get started contributing to Open Source? (34:37) - What kind of talks would you be interested in? (38:55) - Quickfire questions - What is your favorite Vue feature? (39:32) - Options API or Composition API? (39:46) - ref or reactive? (40:03) - Tabs vs. Spaces? (40:34) - Favorite Editor? (40:52) - Conferences in person or remote? (41:06) - Git - Rebase or Merge? (41:28) - Podcast, Video or Blogposts? (41:48) - Your favorite way of writing CSS? (42:42) - What is your favorite Frontend Framework? Links and ResourcesFill out the State of Vue.js SurveyAnd also the State of JS Survey 🙌Your HostsAlexander LichterTwitterYouTubeWebsiteMichael ThiessenTwitterYouTubeWebsite---Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
Security is a topic that is often overlooked in the frontend world. But at least for you all - no longer! To make sure we cover Security for Vue and Nuxt applications as broad as possible, Michael and Alex are joined by Jakub Andrzejewski, who is not only a Senior Frontend Developer but also author of the Nuxt Security Module. We cover not only the module but also how to avoid common security mistakes as a Vue developer and how to protect your applications from vulnerabilities, and which are the most common ones.Of course, we can't miss out on the State of Vue.js Survey, which is currently running and was co-created by Jakub as well!Besides talking about the Security and the State of Vue.js, we also discuss how Jakub got into Vue.js at first and how he perceived the transition to Vue 3 and the Composition API.Enjoy the episode!Our GuestJakub AndrzejewskiBlogBlueskyTwitterChapters(00:00) - Welcome to the DejaVue Podcast (00:12) - Introducing our Guest (02:07) - The Nuxt Ecosystem Team (07:47) - How did you get into Vue.js (13:09) - Transition to Vue 3 and Composition API (17:00) - React Livecoding as a Vue Dev (18:10) - vue-vine for multiple components (20:34) - State of Vue (30:30) - The Nuxt Security Module (37:36) - Will the module project you from everything? (41:59) - The ShipFast incident (45:05) - Ethical Hacking and NPM Security Vulnerabilities (49:24) - Privilege Escalation at Shopify (51:45) - Nuxt Security without a Server (54:28) - More Logic in the Frontend (55:38) - Nothing to Hide? (57:28) - Security Mistakes to Avoid as a Vue Developer (01:02:13) - Wrapping up Links and ResourcesFill out the State of Vue.js SurveyAnd also the State of JS Survey 🙌Nuxt Security ModuleVue VineState of Frontend (Results out)OWASP Top 10DejaVue #E006 - Nuxt Server Components (with Julien Huang)Shipfast incident writeupYour HostsAlexander LichterTwitterYouTubeWebsiteMichael ThiessenTwitterYouTubeWebsite---Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
All of you have seen users do weird things with your application and running into strange scenarios - who can't relate to this?For this and many other reasons, the right way of error handling is important in you application. Join Michael and Alex on a discussion of the different ways one can handle errors in their application.That includes not always showing an error page, but also handling errors request-based or component-based!On that note, error messages and how to write decent ones that are helpful for the users are discussed, as well as how components like NuxtErrorBoundary work under the hoodEnjoy the episode! Chapters(00:00) - Welcome to DejaVue (01:22) - The good old error page (01:58) - Write good error messages! (03:11) - The Vue global error handler (05:07) - Server vs. Client Errors in Nuxt.js (08:34) - The vue:error hook (09:05) - Global error handling for $fetch and interceptors (11:10) - Throw unhandled errors in Prod with Vue 3.5? (13:07) - Component-level error handling (16:33) - NuxtErrorBoundary (18:01) - defineAsyncComponent (18:53) - Request-based error handling (21:45) - New default values in Nuxt 4 (23:30) - Error Tracking (26:33) - Actually handling the errors (28:54) - Wrapping up Links and ResourcesState of JS SurveySentryBugsnagRollbarMichael's talk on error handling in NuxtMichael's article on error handling in Nuxt*And another deep dive into Nuxt 3 error handling*DejaVue #E034 - Data Fetching in Vue and NuxtVue Issue regarding throwing errors in production (low level)VikeNuxtErrorBoundary component Source CodeofetchZodValibotNuxt 4 error and data will be undefined by defaultCreate abstractions for your headings and buttonsYour HostsAlexander LichterBlueSkyTwitterYouTubeTwitchWebsiteMichael ThiessenTwitterYouTubeWebsiteLinks marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
Data fetching is a crucial part of any web application. In this episode of DejaVue, we discuss the different ways to fetch data in Vue.js and Nuxt.js, and how to cache it. We also talk about the experimental Suspense feature in Vue.js and how it can be used to improve the user experience, as well as how to handle third-party scripts in your application.In addition, Nuxt's data fetching options are discussed, including the $fetch method, useFetch, useAsyncData and the useNuxtData composable. Finally, we cover server-side caching in Nuxt.js, including route rules, defineCachedEventHandler, and defineCachedFunction.Enjoy the episode! Chapters(00:00) - Welcome to DejaVue (00:50) - Which topics should be covered next? (01:56) - This episodes topic - Data Fetching (04:13) - Two ways of client-side caching (06:17) - What is Data Fetching actually - and which library to use? (08:19) - Suspense in Vue.js (14:03) - Third Party Scripts (17:38) - Data fetching basics in Nuxt.js (20:28) - $fetch vs useFetch (23:27) - $fetch request deduplication on the server (24:43) - Caching in Nuxt.js (28:18) - routeRules of server-side caching (29:38) - defineCachedEventHandler / defineCachedFunction (32:19) - Unstorage for storing the cached files (35:41) - useNuxtData (40:26) - Why does Nuxt offer more data fetching options? (45:32) - Wrapping up Links and ResourcesLAST CHANCE 15% discount for the VueConf Toronto* with code DEJAVUEofetchkySuspense in VueData LoadersDejaVue #E030 - Pinia and Data Loaders (with Eduardo San Martin Morote)nuxt-workersPartytownsquoosh.appDejaVue #E001 - The Need for SSRYou are using useFetch wrongDejaVue #E003 - Nitro: The Next Generation Server ToolkitCaching in NitroClient side caching with getCachedDataComposable Caching Utils issueRoute Rules in NuxtDejaVue #E002 - Building a Nuxt.js SaaS in less than a week (with Harlan Wilton)Your HostsAlexander LichterBlueSkyTwitterYouTubeTwitchWebsiteMichael ThiessenTwitterYouTubeWebsiteLinks marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.