Skip to content
tezvyn:

Frontend

450 bites tagged Frontend — interview questions with model answers, and 60-second explainers.

Vue, Angular & Svelte2 min read

Angular @Output(): Child Components Reporting Up

An @Output() lets a child component tell its parent something happened, using an EventEmitter. It’s the standard way to handle events like button clicks that the parent needs to act on. The footgun is forgetting to actually `.emit()` the event.

Vue, Angular & Svelte2 min read

Vue Custom Events: Child-to-Parent Communication

Think of `$emit` as a child component sending a flare up to its parent. It's how children report actions upwards, reversing the top-down flow of props. Use it to trigger parent state changes, like closing a modal. The footgun: events don't bubble.

Vue, Angular & Svelte2 min read

Svelte Props: Passing Data with `export let`

In Svelte, `export let` turns a variable into a prop, letting a parent component pass data down. It's how you pass a `userName` to a `ProfileCard` component. The footgun: forgetting `export` creates a private variable, not a prop, so data isn't received.

Vue, Angular & Svelte2 min read

Vue Component Props: Passing Data Downstream

Think of props as a component's 'arguments.' They let a parent pass data down to a child, making it reusable. Use them to pass dynamic data like a user's name to a profile card. The footgun: never mutate a prop directly inside the child component.

Vue, Angular & Svelte2 min read

Vite's Low-Level SSR API

Vite's SSR API lets you run Vite as a middleware inside your own Node.js server, giving you full control over rendering. It's for building custom SSR solutions, often with Express. The footgun: most apps should use a higher-level SSR plugin, not this API.

Vue, Angular & Svelte1 min read

Vite Config: The Control Panel for Your Build

Think of `vite.config.js` as a dynamic script, not a static file. It lets you programmatically change your build based on context, like serving for development versus building for production.

Vue, Angular & Svelte2 min read

Vite's HMR API: Manually Controlling Hot Reloads

Vite's HMR API lets a module handle code changes without a full reload. While frameworks usually manage this, you can use it for custom tooling. The footgun: forgetting to wrap HMR code in `if (import.meta.hot)` will crash your production build.

Vue, Angular & Svelte2 min read

ng new: Your Angular Project Starter Kit

The `ng new` command is your starter kit for any Angular project. It scaffolds a complete, runnable application with a standard folder structure and dependencies, letting you skip manual setup.

Vue, Angular & Svelte2 min read

Scaffolding a Vite Project with `create-vite`

Use `create-vite` to instantly generate a new web project with your chosen framework. It's the fastest way to start a Vue, React, or Svelte app without manual setup. The footgun is forgetting you can pass a `--template` flag to skip interactive prompts.

Vue, Angular & Svelte2 min read

Vue: Options API vs. Composition API

Options API organizes Vue components by property type (data, methods). Composition API organizes them by logical feature. Use Composition API for complex components with tangled logic or for creating reusable 'composable' functions.

Vue, Angular & Svelte2 min read

Why Svelte Skips the Virtual DOM

Svelte skips the Virtual DOM, treating it as runtime overhead. It acts as a compiler, generating precise JavaScript to update the DOM directly. This avoids the 'diffing' step of frameworks like React, leading to smaller bundles and faster updates.

Vue, Angular & Svelte2 min read

Angular's Hierarchical Dependency Injection

Angular's DI is a tree of injectors mirroring your components. When a component needs a service, Angular walks up the tree to find the first provider. Use it to scope services to UI branches, but beware: providing at a component level creates a new instance.

Vue, Angular & Svelte2 min read

Vue Single-File Components (SFCs)

Vue Single-File Components (.vue files) colocate a component's template, logic, and styling into one modular unit. This is the standard for building Vue SPAs and static sites, enabling scoped CSS and pre-compiled templates. Remember, SFCs require a build step.

Vue, Angular & Svelte2 min read

Svelte: A Compiler, Not Just a Framework

Svelte is a compiler that turns your component files into efficient, imperative vanilla JavaScript at build time. This avoids shipping a large runtime, leading to smaller bundles. The footgun is thinking of it as just a runtime; its power is in the build step.

Vue, Angular & Svelte2 min read

Vue: The Progressive Framework Philosophy

Vue's progressive philosophy means you can use as little or as much of it as you need. Use it for a single interactive widget, or scale it up to a full SPA with official libraries.

UI Design & Figma2 min read

Design System Docs: The Product, Not the Afterthought

Treat your design system documentation as a product, not a cleanup task. It's the instruction manual that prevents your component library from being misused. It's essential for scaling a design system to ensure consistency and speed up onboarding.

UI Design & Figma2 min read

Figma Dev Mode: The Developer's View of Design Files

Figma's Dev Mode is a developer-focused lens for design files, translating visuals into code specs. Developers use it to inspect properties, grab code snippets, and track changes. The footgun is building from designs not explicitly marked 'Ready for dev'.

UI Design & Figma2 min read

Screen Readers: Designing for a Non-Visual UI

A screen reader navigates your UI's invisible DOM structure, not its visual layout. Think of it as a text adventure where headings are rooms and links are doors. This is essential for all web UIs, checked via alt text and keyboard focus.

UI Design & Figma2 min read

POUR: The Four Pillars of Web Accessibility

POUR is a mental model for web accessibility. It asks: can users Perceive content, Operate the interface, Understand the information, and use it with Robust tools? It applies to all UI design.

UI Design & Figma2 min read

Design System vs. Style Guide: The Parent and the Child

A Design System is the parent; a Style Guide is just one child. The system is a complete toolkit for building products, containing reusable components and code, used by large teams to maintain consistency.

UI Design & Figma2 min read

SVG: Code-Based, Infinitely Scalable Graphics

Think of SVG as HTML for graphics. It's an XML file with drawing instructions, not pixels, so images scale perfectly. It's ideal for logos and icons on responsive sites. The footgun: SVGs can contain JavaScript, posing a security risk (XSS) if not sanitized.

TypeScript & Web APIs2 min read

Canvas 2D Context: The API for Drawing on the Web

The Canvas 2D Context is your digital paintbrush and ruler for drawing on a web page. You get this object from a `<canvas>` element to draw shapes, text, and images for data visualizations or simple games. The key footgun: it's a state machine.

TypeScript & Web APIs2 min read

localStorage: Your Browser's Persistent Key-Value Store

localStorage is a simple dictionary saved in the browser that persists after the tab closes. Use it to save user settings like a theme. The footgun: all values are strings, so numbers and booleans need manual conversion, like parsing 'true' back to a boolean.

TypeScript & Web APIs2 min read

Typed Custom Events: Making Browser Events Type-Safe

CustomEvent lets you fire your own browser events, but its payload is `any`. Typing them means defining a specific shape for the event's `detail` property, turning a generic signal into a predictable, self-documenting API for your components.

Get Frontend bites daily.

Five a day, five minutes, offline. With quizzes so it sticks.

Open testing — you’ll join as an early tester.