👉🏻 XSS attacks are a serious threat to web applications, but following the strategies outlined in this blog post, you can effectively safeguard your Vue.js applications.
👉🏻 Adam Jahr helps you gain clarity on Vue + Nuxt app rendering modes and the best fit for your project's needs, performance demands, and user experience.
👉🏻 A spiritual successor of ViTauri, made with Nuxt 3 and Tauri 2 to build desktop applications.
👉🏻 Still work in progress.
🔥 Self-Host Your Nuxt App With Coolify
Let me tell you a quick history of my hosting provider journey: it all started with Netlify back in 2018 when I looked for an easy way to host my portfolio website. You don't get disappointed by providers like Netlify or Vercel: your app gets deployed with only a few clicks, and it's completely free. An amazing user experience, and I used it to host all my other apps like weekly-vue.news and CodeSnap.dev.
Things get tricky when your apps become more traffic as you only get a limited amount of bandwidth, build minutes, serverless function calls, etc., so I had to switch to the Pro team plan, which is at $19/month. I had to pay $25/month for edge function calls as my function calls exceeded the free limit. A quick win was to migrate some of my Nuxt server routes out to AWS Lambda functions. But this way, my code was split between the Nuxt app and the AWS Lambda functions which made the codebase harder to maintain.
To solve those problems, I moved my apps to Render. There, you pay a server for each of your web apps but you don't have any function call limitations. You get a server with 0.5 CPU and 512MB RAM for $7/month. Soon, I had to switch to the Team plan for $19/month as I exceeded the free bandwidth of 100GB. The next problem was a traffic spike at one of my apps, which killed the server because it exceeded its server memory limit and wasn't accessible anymore during that time. Upgrading to the next higher server would cost $25/month for 1 CPU and 2GB RAM...
I was shocked and decided to move my apps to Coolify, which I already used to host my analytics database and some monitoring tools like Grafana. I knew that the cheapest server rented from Hetzner at ~$4/month would provide me with 2 CPUs and 4GB RAM. This solution is the most cost-effective one for me, and I can scale my servers as needed. Additionally, I don't have to worry about any limitations like bandwidth, build minutes, or function calls and any serverless horror stories
So, let's do a short cost comparison of hosting my three Nuxt apps with the following providers:
👉🏻 Netlify: $44/month (could potentially grow if I exceed more limits)
👉🏻 Chrome has reintroduced full prerendering of pages to improve navigation speed by using the address bar, bookmarks, search suggestions, and the Speculation Rules API.
Weekly Vue News #194 Reactive Time Ago View online Hi 👋 I'm on vacation this week, so no special news from my side — just some fresh Vue & Nuxt content for you! Enjoy this issue and have a lovely week ☀️ Vue 📕 Optimizing heavy operations in Vue with Web Worke...
Read this on my blog We made it to 200! Thanks for reading and supporting me over the last few years, it means a lot to me. Tomorrow is the last day of the Composable Design Patterns course launch and the 35% off discount. If you were hoping to pick it up, don't forget to check it out! As always, I've got some tips and links for you, and a new podcast episode. Enjoy, and have a great week! — Michael 🔥 Default Content with Slots You can provide fallback content for a slot, in case no content is provided: < !-- Child.vue --> < template > < div > < slot > Hey! You forgot to put something in the slot! < / slot > < / div > < / template > This content can be anything, even a whole complex component that provides default behaviour: < !-- Child.vue --> < template > < div > < slot name = "search" > < !-- Can...
If you're using Vue 3, you're probably using composables. But other than using VueUse where you can, how do you get the most out of them? Over the past few years I've been slowly putting together a list of patterns and best practices for how to write composables in the best way. I've spent hours reading the source code of VueUse (one of the best — but most time-consuming — ways to learn it). I've read articles, listened to talks, and written lots and lots of my own code. I ended up with 15 different patterns, and each one will help you to write better composables. I've condensed and put all of these composables together into a course — Composable Design Patterns. Get Composable Design Patterns now. Because this is the launch, it's on sale for 35% off until Thursday. For each of the 15 patterns in this course, you'll get: A concise overview that tells you when and how to use it, along with variations and edge cases ...
评论
发表评论