Turn emails into revenue with Brew. No credit card, free credits to try.
vueschool.io · newsletter
Explore this email design and adapt it to your own brand. Review the copy, links, and offer before sending.
Vue School website
Hi John,
This week’s edition is packed with fresh Vue and Nuxt content focused on practical patterns you can use right away. We’re covering cleaner ways to handle variable-height UI, stable IDs in Vue 3.5, and how to build a RAG workflow in Nuxt with Gemini File Search. We’ve also released the first lessons of a brand-new course, plus a recommended next course based on your experience level.
Here’s what’s inside this week:
3 new articles on Vue School blog: Using Pretext in Vue to Build Variable-Height UI Without Layout Thrash, Generating Random IDs in Vue.js, RAG with Nuxt and Gemini File Search
The first 8 lessons of our new RAG with Nuxt and Gemini File Search course
Frontend Nation updates
A recommended course based on your current Vue level
Chance to win FREE Unlearn.dev subscription by registering to CypressConf 2026
Practical tips from Daniel Kelly
News from the BitterBrains ecosystem
Latest courses, articles and tutorials
Using Pretext in Vue to Build Variable-Height UI Without Layout Thrash
→ Read the article
If you’ve ever had to render text, measure it, and then re-render just to make a layout work, this one is for you.
This new article explores how to use Pretext in Vue to calculate wrapped text height before mounting it in the DOM. That means fewer hidden measurement elements, less layout thrash, and a much cleaner way to handle text-heavy interfaces.
You’ll see why this approach is especially useful for things like:
virtualized lists
chat threads
card grids
resizable interfaces
canvas-style UIs with labels
It’s a smart pattern for cases where text height affects layout and you want Vue to stay focused on state, not DOM measurement hacks.
→ Read the article
Generating Random IDs in Vue.js
→ Read the article
Vue 3.5 introduced useId(), and it solves a small but surprisingly annoying problem really well. In this article, you’ll learn how to generate unique, stable IDs for labels, inputs, ARIA attributes, and reusable components without relying on manual counters, Math.random(), or hydration-prone workarounds.
The article covers:
how useId() works
why it’s SSR-safe
when to use it
when not to use it
how to avoid common mistakes like calling it inside computed()
A small API, but a very nice upgrade for building accessible and reusable UI.
→ Read the article
RAG with Nuxt and Gemini File Search
→ Read the article
RAG is one of the most useful AI patterns right now, and this article walks through how to build it in a practical way with Nuxt.
You’ll create a working backend flow using Gemini File Search, including document indexing, store creation, polling job status, and grounded question answering based on your own uploaded content.
Inside the tutorial, you’ll learn how to:
create a File Search store
upload and index documents
poll indexing status
ask grounded questions against your indexed docs
add document listing and delete flows
It’s a strong hands-on guide if you want to build AI features that are actually useful, not just flashy.
→ Read the article
New course release: RAG with Nuxt and Gemini File Search
The first lessons of our brand-new course are now live.
→ Find out more
8 lessons now available:
What is RAG and What We’re Building
RAG Terms
Project Setup
Create a Gemini File Search Store
Add Documents to a Gemini File Search Store
Ask Questions about Your Documents
Attributing Docs in Answers
Filtering Matches with Metadata
This course is built to help you understand the full flow behind retrieval-augmented generation in a Nuxt app, step by step. You’ll start with the core concepts, set up the project, and then move into working with Gemini File Search in a way that feels practical and developer-first.
If you want to get better at building AI-powered apps with grounded answers and real document workflows, this is a great place to start.
→ Start the new course
⭐ Course recommendation
GraphQL Fundamentals
5 lessons · 23 minutes
GraphQL is one of those things every frontend developer runs into sooner or later. This beginner-friendly course gives you a clean foundation without drowning you in theory.
You’ll learn what GraphQL is, why it can be more flexible than REST, how to explore APIs with GraphiQL, and how to write both queries and mutations. A solid pick if you want to understand modern API workflows and build better instincts early.
→ Start course
Upcoming events
Frontend Nation 2026: New Speakers Announced
Frontend Nation continues to push deeper into the intersection of frontend and AI, with speakers like Kent C. Dodds, Alex Garrett-Smith, Alex Kyriakidis, and Ekaterina Sirazitdinova shaping what’s next. And we’re not slowing down. Strong voices from the Laravel ecosystem are joining the stage as we expand into the backend ecosystem this year.
Pascal Baljet is the creator of Inertia UI and a prolific open-source contributor, with Laravel packages used millions of times across the ecosystem. Pascal will join Frontend Nation to dive into modern frontend without an API. Stay tuned.
Joining him is Steve McDougall, a Laravel and PHP expert and Certificates.dev content owner, known for his work on building practical, production-ready APIs and improving the developer experience across frontend and backend teams.
If you’re not registered yet, this is the moment to join while the program is still unfolding. It’s free, global, and designed for developers actively building today.
📍 Online | 🗓️ June 3–4, 2026
→ Save your free seat
One-click sign-up enabled
If you have practical insights to share with the global frontend community, this is your chance to step onto the stage.
→ Apply to speak at Frontend Nation
VueConf US
We will be at the largest Vue.js conference in the US, VueConf US, happening May 19–21, 2026, in Atlanta. Hosted by Evan You and the Vue core team, expect workshops, production-focused talks, and a strong AI angle across the lineup.
Our very own Daniel Kelly will be there with a Nuxt Fundamentals & Nuxt 4 workshop covering rendering modes, routing, data fetching, SEO, runtime config, and deployment for real-world Nuxt apps. And you will see him on stage as well.
Midtown Atlanta, USA | May 19–21, 2026
As part of the Vue School community you get a 20% discount with the code: VUESCHOOL.
→ Register for VueConf US
Win a FREE Unlearn.dev subscription with CypressConf 2026
→ Find out more
Staying sharp as a developer means learning the tools, workflows, and practices that actually move your team forward.
That’s why we’ve partnered with Cypress to bring you a limited-time opportunity tied to CypressConf 2026 and Unlearn.dev, a platform built to help you unlearn outdated patterns and build the judgment needed to work confidently with AI.
Here’s how to participate:
Register for CypressConf before April 14th at 23:59 CEST
You’ll automatically be entered into the Unlearn.dev giveaway
One winner will receive a FREE 1-year Unlearn.dev subscription
→ Register for CypressConf & enter giveaway
The winner will be announced by CypressConf.
Not interested in the giveaway? You can still join CypressConf.
🎟️ Secure your spot and start building practical skills before the event begins.
💡Tip of the week from Daniel Kelly
Want your browser to talk directly to your Vite dev server?
Use `import.meta.hot.send()` to dispatch custom events straight from the browser.
Log interactions, trigger rebuilds, or power custom dev tools in real time.
No polling. No extra network layers. Dev-only magic.
Learn how to master this trick and build smoother tooling.
Turn your images on to see this weekly tip from Daniel.
Struggling with complex components? Break them into smaller, focused pieces.
The Branching Component Pattern fixes that.
Extract each state into its own component
Loading, Error, Content become isolated
Smaller files, clearer intent
Easier testing and long-term maintenance
This one shift makes large components dramatically easier to work with.
See all 5 patterns explained.
Turn your images on to see this weekly tip from Daniel.
From the BitterBrains network
Training, events, and courses from our broader developer ecosystem
Unlearn: a new developer learning platform for the AI era and beyond
Unlearn just announced early access signup. It’s a new developer education platform built around an important reality: AI is changing how software is built. Instead of focusing only on AI tools, Unlearn focuses on the skills developers need when AI becomes part of the development workflow.
→ Join waitlist
One-click signup enabled
Level up your next skill 40% off
If something from this week clicked, this is where you push it further. Your Vue School subscription gives you full access to: GraphQL Fundamentals, the new RAG with Nuxt and Gemini File Search course, and the entire library of 84+ Vue School courses.
Whether you're getting comfortable with APIs, tightening up your data flows, or building reusable systems, it’s all there.
You can get 40% off your Vue School subscription right now.
→ Get access and keep building
That’s it for this week.
Working on something interesting or want us to cover a specific topic? Just reply, we’re listening.
Kind regards,
Maria
vueschool.io
X
GitHub
BlueSky
YouTube
TikTok
Vue School is proudly part of BitterBrains – Making Developers’ Lives Easier
Become a BitterBrains Community Supporter here.
Courses | Vue.js Master Class | Workshops | Tutorials | Plans
🔕 Not interested? Mute Weekly Newsletter here.
You received this email because you are subscribed to Marketing Information at thomas+vueschool@brew.marketing.
Manage email preferences
2093 Philadelphia Pike #9442, Claymont, Delaware 19703, United States