Hi, welcome to my Twitter account! 👋
I'm a Senior Frontend Developer specializing in
@vuejs
&
@nuxt_js
.
Here I publish daily content on Vue & Nuxt, and I run a weekly newsletter about these topics (
@weekly_vue_news
).
Follow for expert insights and tips!
🤩 In Vue 3.3 you no longer need to use two <script> blocks to define component options but you can use the defineOptions compiler macro
You can also use it today in your Vue 2/3 app using the Vue Macros library:
@vuejs
📕 Deep Cloning Objects in JavaScript, the Modern Way
👉🏻 The structured clone function, which is built into the JavaScript runtime, can be used to make deep copies of objects in JavaScript.
🛠️ driver.js
👉🏻 Powerful, highly customizable vanilla JavaScript engine for page tours and contextual help systems.
👉🏻 No external dependencies, light-weight, supports all major browsers and highly customizable.
💡 Vue Tip: Show inlay hints in VS Code for missing props
👉🏻 The Volar extension can show inlay hints for missing components props
👉🏻 Disabled by default, enable it in the settings "Vue > Inlay Hints: Missing Props"
👉🏻 In JSON: ""vue.inlayHints.missingProps": true"
🛠️ extension.js
👉🏻 An easy way to create cross-browser web extensions without any build configuration.
👉🏻 It's plug-and-play and has built-in support for TypeScript, WebAssembly, React, and modern JavaScript.
🛠️ Chrono
👉🏻 A natural language date parser in JavaScript.
👉🏻 It is designed to handle most date/time formats and extract information from any given text.
🛠️ Una UI
👉🏻 Una UI is an atomic UI Framework powered by the UNOCSS engine.
👉🏻 It provides components and presets for creating stunning user interfaces with ease.
🙏🏻
@vuejs
developers please use Computed Properties
Just take a look at the code example below...
I recently stumpled upon that code and it could be easily refactored using a Computed Prop.
📕 App structure for big Vue projects
👉🏻 The author describe what he thinks has been the more intuitive easy to work and maintain folder structure in medium to large
@vuejs
applications.
📹 Vue 3 & Composition API - Full Project
👉🏻 Build an expense tracker application from scratch using Vue.js 3 and the composition API with the latest syntax from version 3.2.
🛠️ Shadcn for Vue
👉🏻 A community-led Vue port of the React-oriented "shadcn/ui" component library.
👉🏻 A suite of attractive components built with Tailwind CSS and Radix UI that you can easily "copy and paste" into your apps.
💡 React, Vue, Angular and Svelte use different techniques to conditionally render elements.
❓Which do you prefer?
(Thanks for all the feedback on my last post, this version should hopefully be correct ☺️)
✍🏻 I published a new blog post
"A Comprehensive Guide to Data Fetching in Nuxt 3"
@nuxt_js
👉🏻 In this article, I'll explain everything you need to know about the different data fetching methods available in Nuxt 3 and when to use them.
💡 Nuxt Quick Tip: Render component only during development
👉🏻
@nuxt_js
provides the <DevOnly> component to render a component only during development.
👉🏻 The content will not be included in production builds and tree-shaken.
💡 Volar Tip (VS Code Extension)
👉🏻 You can now extract simple parts of your template into a new component
👉🏻 Select the code inside template and press CMD + . to show the context menu
📕 6 Advanced TypeScript Tricks for Clean Code
👉🏻 Six advanced TypeScript tips will be covered here, along with examples showing how each one works step by step and their benefits.
👉🏻 Covers topics like decorators, namespaces, mixins and more.
💡 Nuxt Quick Tip: Use different Favicon for development and production
👉🏻 Use different Favicon to quickly distinguish between different environments in your open browser tabs.
@nuxt_js
🛠️ VueEmail
👉🏻 A collection of high-quality, unstyled components for creating beautiful emails using Vue and TypeScript.
👉🏻 I use it for
@weekly_vue_news
💡 Vue Tip: Use Scoped Slots in a Child Component to Provide Data for Parent Component
A Scoped Slot in a child component can provide data for presentation in the parent component using a slot.
🧵 👇🏻
@vuejs
📕 Vue Patterns
👉🏻 Free guide for Vue patterns that can significantly help in writing clean, efficient, and maintainable code.
👉🏻 Includes patterns like composables, provide/inject, and more.
🛠️ TypeStat
👉🏻 TypeStat converts JavaScript into TypeScript and modifies TypeScript types in existing code. 👉🏻 It can add and remove types without changing runtime behavior.
👉🏻 It can also infer types and annotate missing nulls and undefineds.
📕 A simple Vue form validation composable with Zod
👉🏻 In this article, you'll see how to create a simple Vue composable for form validation with just a few lines of code
👉🏻 The composable uses Zod under the hood to validate form data.
🐛 Spot the bug
❓ Why does the "useFetch" composable in
@nuxt_js
in this example not automatically refetch if "categoryId" is updated?
🙈 It took me 1-2 hours to find the root cause 😅
📕 Ref vs. Reactive: What to Choose Using Vue 3 Composition API?
👉🏻 In this article, I'll explain how you can choose whether to utilize reactive, ref, or both to adding a reactive state to Vue components .
📕 Good Ways To Organize Large Vue.js Project
👉🏻 It can be difficult to keep a large Vue.js project structured, but there are a number of tactics you can employ to do so.
👉🏻 Here are some helpful tips for structuring a sizable Vue.js project.
📕 Minimizing Nuxt 3 Docker Images
👉🏻 In this blog post, you'll learn how to minimize Nuxt 3 Docker images
👉🏻 Starting with a basic unoptimized image that is 1.4 Gigabyte large and ending with an image that's only 164 MB in size.
🛠️ Unlighthouse
👉🏻 Unlighthouse scans your entire site using Google Lighthouse, with a modern UI, minimal config and smart sampling.
👉🏻 It takes two minutes on average and is open source.