Top 30 Frontend Dev Latest Updates Quiz
30 multiple-choice questions on what has recently changed in Frontend Dev, drawn from 30 bites in the Frontend Dev library. Answer them here or read straight down. Every question carries the correct option, why it is correct, and a link to the bite it came from.
Frontend web development and UI engineering
30 questions. Pick an answer, or open “Show the answer” to read it.
Answers are graded in your browser. Nothing is saved, and no XP or streak is earned here. The app keeps score.
Question 1 of 30
What is the primary benefit of using createUseFetch over ad-hoc useFetch wrappers?
Show the answer
Answer: c · It lets you bake baseURL, interceptors, and server flags into reusable, fully typed composables that remain SSR-compatible.
createUseFetch is designed to cut API boilerplate by embedding baseURL, interceptors, and server flags into reusable, fully typed composables that remain SSR-safe. Distractor B describes the Vue Router v5 upgrade's impact on dev-server performance, not fetch factories.
Read the full bite: Nuxt 4.4 Adds Custom Fetch Factories and Router v5
Question 2 of 30
Why is it significant that Nuxt Agent shares its MCP server with tools like Cursor and Claude Desktop?
Show the answer
Answer: a · It ensures the structured docs and issue data used on nuxt.com matches what developers query locally
The card states that using the same MCP server means the structured data feeding local AI assistants is identical to the one powering the official site, which closes the gap between reading docs and reproducing bugs. Distractor B misinterprets shared MCP infrastructure as local file system access, whereas the card emphasizes synchronized data sources, not local environment control.
Read the full bite: Nuxt Agent beta replaces docs chat with MCP assistant
Question 3 of 30
How does Turbopack's Server Fast Refresh in Next.js 16.2 differ from the previous server-side reload behavior?
Show the answer
Answer: c · It reloads only the changed module and leaves the rest of the server process intact, rather than clearing the require.cache for the entire import chain.
Turbopack now surgically reloads only the changed module while leaving the server process intact, replacing the old behavior of clearing require.cache for the changed file and its entire import chain. Option A is tempting because it mentions require.cache and node_modules, but the old system actually cleared untouched node_modules in the import chain, and the new approach avoids chain-wide cache clearing entirely.
Read the full bite: Next.js 16.2 brings 67-100% faster server Fast Refresh
Question 4 of 30
Which change to Vue's template parser in 3.4 is primarily responsible for its 2× speed improvement?
Show the answer
Answer: b · It replaced recursive descent and heavy regex with a single-pass state-machine tokenizer
The card states the parser was rewritten from a recursive descent approach relying on heavy regex to a state-machine tokenizer based on htmlparser2 that iterates only once. Option A is tempting because it mentions htmlparser2, but the old regex-based tokenizer was fully replaced, not retained.
Read the full bite: Vue 3.4 Cuts Build Times 44%, Stabilizes defineModel
Question 5 of 30
How does Firefox 151's Web Serial API allow web apps to handle hardware tasks previously requiring native installers?
Show the answer
Answer: d · By letting JavaScript read and write directly to USB serial devices after explicit user permission
Firefox 151 implements the Web Serial API natively, so JavaScript can call navigator.serial.requestPort() to access hardware directly after the user explicitly grants permission, removing the need for native binaries. Distractor A is wrong because sites cannot silently probe ports—the permission model requires an explicit grant per site and port.
Read the full bite: Firefox 151 Ships Web Serial API for Hardware
Question 6 of 30
What is the primary risk when React teams adopt TypeScript without standardized prop and hook typing patterns?
Show the answer
Answer: b · Code review slows due to style debates and type safety erodes from inconsistent patterns
The card warns that poor typing leads to verbose code, suppressed errors, and code review debates about style rather than logic. Option C is wrong because ComponentProps is introduced to eliminate verbose manual re-declaration, not require it.
Read the full bite: Matt Pocock's Free React TypeScript Tutorial
Question 7 of 30
For which file is //# allFunctionsCalledOnLoad the most appropriate optimization?
Show the answer
Answer: c · A core entry-point bundle whose functions execute during initial page load
The hint is designed for known startup files so V8 can compile them in the background during network load. Using it on all scripts (A) or on non-startup files (A, D) wastes CPU and memory without improving startup time.
Read the full bite: Chrome 136 cuts JS startup 630ms with compile hints
Question 8 of 30
What condition forces V8's JSON.stringify to abandon its new side-effect-free fast path and use the slower recursive serializer?
Show the answer
Answer: a · One of the properties defines a custom toJSON method
Custom toJSON methods execute user code during serialization, violating the side-effect-free guarantee required for the fast path. Deep nesting is actually improved by the iterative fast path, while Unicode strings and null-prototype objects do not inherently trigger the slower recursive serializer.
Read the full bite: V8 doubles JSON.stringify speed with side-effect-free fast path
Question 9 of 30
What is the significance of Vercel using the same public Adapter API contract as third-party platforms?
Show the answer
Answer: a · Third-party platforms can achieve full framework fidelity without relying on reverse-engineered internals.
The correct answer is B because the card emphasizes that the public contract allows any platform to target the same framework fidelity as Vercel without reverse-engineering build output. Option D is tempting because Vercel did open-source its adapter, but the card explicitly states there are no private hooks, so there was no secret build logic to replicate.
Read the full bite: Next.js 16.2 ships stable Adapter API for all platforms
Question 10 of 30
Which scenario best describes the supply-chain vulnerability WAICT is designed to prevent in encrypted web apps?
Show the answer
Answer: a · A compromised server selectively serves modified JavaScript to specific users to exfiltrate keys
The card explains that WAICT stops compromised servers from silently injecting malicious JavaScript to specific users, which breaks end-to-end encryption. Option C describes a man-in-the-middle attack that TLS already prevents, whereas WAICT closes the trust gap that TLS and SRI leave open.
Read the full bite: Mozilla WAICT Verifies Web App JavaScript in Nightly
Question 11 of 30
When an app running on Vercel requests a provider token through Vercel Connect at runtime, how does it prove its identity?
Show the answer
Answer: d · By using the OIDC identity that every Vercel deployment automatically receives
Vercel Connect uses the deployment's built-in OIDC identity to exchange for short-lived provider tokens, eliminating persistent secrets. Static env vars (C) are the legacy approach, and while per-user consent flows (A) may come later, they are not the current runtime mechanism.
Read the full bite: Vercel Connect replaces env tokens with runtime OIDC
Question 12 of 30
When debugging a Nuxt 4 edge case, why would you branch a Nuxi answer instead of continuing in the same chat?
Show the answer
Answer: b · To explore a tangent or compare an alternative solution without losing the original thread.
Branching creates a forked thread from a specific answer so you can explore tangents or compare solutions while leaving the original conversation intact. Option A confuses branching with the privacy toggle, and option C describes the benefit of GitHub sign-in rather than branching.
Read the full bite: Nuxt ships Nuxi AI agent with context-aware docs help
Question 13 of 30
According to Dodds, what is the best response when vector search misses exact identifiers like 'React Testing Library'?
Show the answer
Answer: c · Add a BM25 lexical layer and merge results with Reciprocal Rank Fusion
Dodds kept his existing vector pipeline and augmented it with SQLite FTS5 BM25 search, merging both result sets via Reciprocal Rank Fusion, because embedding models inherently optimize for conceptual meaning rather than exact string matches. Simply scaling up the embedding model or switching entirely to lexical search would not solve the hybrid retrieval problem.
Read the full bite: Kent C. Dodds Adds SQLite FTS5 to Vector Search
Question 14 of 30
How does VitePress 1.0 optimize documentation sites for both search engine indexing and fast subsequent page navigation?
Show the answer
Answer: b · It generates static HTML at build time for SEO, then hydrates into a Vue 3 SPA for instant client-side navigation.
VitePress produces static HTML at build time for search indexing and fast initial loads, then hydrates into a Vue SPA so subsequent navigation feels instant without full page reloads. Distractor D is tempting because the framework does pre-fetch chunks, but only for links visible in the viewport rather than the entire site at once.
Read the full bite: VitePress 1.0 replaces VuePress for docs
Question 15 of 30
When reviewing AI-generated Angular pull requests in mid-2026, what specific danger should senior engineers prioritize?
Show the answer
Answer: b · It may look correct while silently introducing outdated patterns and performance regressions.
The card warns that AI-generated code often looks correct but violates current best practices, causing silent architectural drift and performance regressions. It does not claim that legacy code fails to compile or that every RxJS operator must be migrated immediately.
Read the full bite: Angular v21 ships while AI models write outdated code
Question 16 of 30
A long-running agent job fails on step five after several expensive model calls. How does Vercel Workflow SDK handle the retry?
Show the answer
Answer: a · It resumes from the last successful checkpoint before the failure, avoiding redundant calls.
Workflow SDK checkpoints every step and persists state, so retries resume from the last good step instead of restarting from zero. Option C describes standard retry behavior without durable execution, while option B conflates automatic retries with the SDK's optional human-in-the-loop pauses.
Read the full bite: Vercel ships AI Gateway, Workflow SDK, and Sandbox for agents
Question 17 of 30
Why does the card say the tutorial uses active exercises rather than passive video?
Show the answer
Answer: b · To build debugging instincts and reduce reliance on guessing and type casting
The card emphasizes that junior developers often guess and cast their way out of TypeScript errors, and active exercises are meant to build debugging instincts instead. Option A describes the Gitpod integration, which is a deployment convenience, not the pedagogical reason for choosing active exercises over video.
Read the full bite: Matt Pocock Tutorial Covers Ten TypeScript Errors
Question 18 of 30
Why does WasmGC benefit significantly from speculative inlining while traditional Wasm 1.0 modules generally do not?
Show the answer
Answer: c · WasmGC features like virtual methods and subtyping produce indirect call targets that static analysis cannot predict, unlike statically structured Wasm 1.0.
WasmGC's higher-level constructs such as virtual methods and subtyping create opaque indirect call sites that defeat static analysis, making runtime feedback and speculative inlining essential. Option D reverses the actual relationship: Wasm 1.0 works well with ahead-of-time optimization precisely because it exposes sufficient static structure, not because it lacks it.
Read the full bite: Chrome M137 Ships Speculative Deopts and Inlining for Wasm
Question 19 of 30
How did PR #729's use of Cloudflare Sandboxes eliminate the heartbeat and shutdown-if-idle plumbing required by the earlier Container approach?
Show the answer
Answer: b · By running sandbox.exec() as a one-shot command that naturally terminates when the task finishes.
PR #729 uses sandbox.exec() as a single command that exits when FFmpeg finishes, removing any need for long-lived service coordination. Option A is wrong because the worker does not send heartbeats for the sandbox; the one-shot model eliminates heartbeat logic entirely.
Read the full bite: Cloudflare Sandboxes Cut Container Heartbeat Plumbing
Question 20 of 30
Why is Angular v22's stabilization of Signal Forms, Angular Aria, and Asynchronous Reactivity APIs considered more significant than a routine version bump for large teams?
Show the answer
Answer: a · It provides production-ready primitives that reduce custom accessibility work and create clear migration targets away from legacy reactive forms
Stabilization means these APIs are now maintained long-term and safe to adopt, giving teams a clear path away from legacy reactive forms while reducing custom accessibility boilerplate. Distractor B is tempting because stable APIs imply safety, but the card emphasizes future maintenance and reduced risk, not that every preview API remained unchanged.
Read the full bite: Angular v22 stabilizes Signal Forms, Aria, Asynchronous Reactivity APIs
Question 21 of 30
How did SvelteKit 2.61 change the argument passed to an enhance callback?
Show the answer
Answer: d · It now receives a copy of the form remote function instance with a submit() API
The card states that enhance callbacks now receive a copy of the form remote function instance exposing its own submit() API, replacing the old destructured object. Option B is tempting because it mixes the old callback shape with the new live() query feature, but live() is unrelated to enhance arguments.
Read the full bite: SvelteKit 2.61 breaks remote functions, adds live queries
Question 22 of 30
Mozilla's use of Claude Mythos Preview on Firefox demonstrated that modern LLMs can accomplish what traditional fuzzing alone struggled to achieve?
Show the answer
Answer: d · Identify deep architectural vulnerabilities hidden in heavily audited code for decades
Mozilla showed LLMs can uncover deep architectural bugs in heavily audited code that survived years of fuzzing. Option B describes just one specific technique from a single finding, not the broader capability, and D overstates the workflow since human triage remains essential.
Read the full bite: Claude Mythos Cracks Firefox Bugs Fuzzing Missed
Question 23 of 30
An Angular app suffers from both excessive backend requests during username checks and bloated bundles from legacy ngIf/ngFor usage. Which paired approach best resolves both issues?
Show the answer
Answer: a · Debounce async validators in Signal Forms and migrate structural directives to Control Flow syntax
The correct paired approach is debouncing Signal Forms async validators to stop redundant backend calls and migrating legacy structural directives to Control Flow syntax for bundle and runtime gains. The most tempting distractor suggests using only synchronous validators and standalone components, but synchronous validators cannot check username availability against a backend, and standalone components do not replace legacy ngIf or ngFor directives.
Read the full bite: Angular 21.1 ships with Signal Forms debounce patterns
Question 24 of 30
What happens when an AI agent tries to launch a second next dev process in Next.js 16.2?
Show the answer
Answer: b · Next.js emits a structured error that includes the exact kill command for the running process
The dev server lock file at .next/dev/lock stores the PID, port, and URL, enabling Next.js to return a structured error with the precise kill command rather than a generic port-in-use message. Option A is tempting because some dev tools auto-restart, but Next.js 16.2 explicitly returns an error instead, and Option D confuses the lock file feature with the separate browser-to-terminal logging feature.
Read the full bite: Next.js 16.2 adds agent-native dev tooling
Question 25 of 30
Why does the card suggest evaluating Vercel Connect against your current secret management strategy?
Show the answer
Answer: a · Because it replaces long-lived environment tokens with temporary scoped credentials
The card states that Vercel Connect introduces temporary scoped credentials for agent-to-service authentication, eliminating long-lived environment tokens, which directly addresses secret management and token rotation struggles. Option C confuses Connect with Marketplace database integrations, while B and D describe other distinct products in the Agent Stack.
Read the full bite: Vercel Ship 2026: agent stack, eve framework, and microservices
Question 26 of 30
Why did moving the apps into workspace packages under services/* initially break production?
Show the answer
Answer: c · Node enforced package boundaries, exposing invalid import aliases and hardcoded paths that assumed the old root-relative layout
Node began enforcing package boundaries after the move, so an import alias that reached outside the services/site boundary failed with ERR_INVALID_PACKAGE_TARGET and a hardcoded MDX fetch path pointed to the wrong location. Option D is tempting because lockfile consolidation produced most of the diff, but the outage was caused by path assumptions, not dependency conflicts.
Read the full bite: Kent C. Dodds Fixes Accidental Monorepo with Workspaces
Question 27 of 30
When using Vue 3.5's stable reactive props destructure, what must you do to keep a destructured prop reactive when passing it to watch or a composable?
Show the answer
Answer: d · Wrap the variable in a getter function
Vue 3.5 requires wrapping destructured props in getters when passing them to watch or composables to preserve reactivity. Passing them directly severs the reactive link, and withDefaults is the old boilerplate this feature replaces.
Read the full bite: Vue 3.5 cuts reactivity memory 56%, adds lazy hydration
Question 28 of 30
When upgrading to SvelteKit 2.56, which behavior change affects existing client-side query refresh logic?
Show the answer
Answer: b · Query refreshes now require explicit server permission before executing
The card states that client-requested query refreshes now require explicit server permission rather than executing automatically. Option D is tempting because a boolean return was indeed added, but that change applies to form submissions, not query refreshes.
Read the full bite: SvelteKit 2.56 overhauls remote functions, adds TypeScript 6.0
Question 29 of 30
The explainer opens by stressing that RSC is not SSR. Based on the card, why do client components need their props to be serializable?
Show the answer
Answer: a · Because data has to cross the network boundary from server to client components
The card ties prop serialization to where the network boundary sits between server rendered and client components. The tempting wrong answer assumes RSC renders everything in the browser, which contradicts the entire premise that components render on the server.
Read the full bite: Server Components, explained without the jargon
Question 30 of 30
Which category covers 'React interview cheatsheet: hooks rules in 60 seconds' most accurately?
Show the answer
Answer: c · React & Next.js
This bite is filed under React & Next.js.
Read the full bite: React interview cheatsheet: hooks rules in 60 seconds
Could you explain these out loud?
That is what an interview actually tests. Tezvyn gives you questions like these with what the interviewer is really checking, the answer that lands, and the mistake that ends the conversation, in the four minutes before your next meeting.
The iPhone app is on the way
We are building it. Until it lands, nothing here is held back from you: every interview card, your saved cards, streaks and the job board all work in Safari, plus hundreds of free practice quizzes of thirty questions each. Sign in and it all carries over to the app the day it arrives.
Want it as an icon? Tap Share at the bottom of Safari, then Add to Home Screen. It opens full screen and the cards you have read stay available offline.