Matyas.
ServicesProjectsExperienceBlogContact
CSGet in touch
Back to Dictionary
web-dev

CSS Grid

CSS Grid is a two-dimensional layout system that lets you define rows and columns simultaneously, making it ideal for complex page layouts. Unlike Flexbox which works in one axis at a time, Grid allows you to place items precisely in both horizontal and vertical directions using named areas or line numbers. Features like grid-template-areas, auto-fill, and minmax() make it possible to create responsive layouts with minimal code.

#web-dev

Related Terms

Lazy Loading

Lazy loading is a performance optimization technique that defers loading of non-critical resources until they are actually needed — typically when they enter the viewport. It is commonly applied to images, videos, and below-the-fold components to speed up initial page load. Modern browsers support native lazy loading via the `loading="lazy"` attribute, while JavaScript-based solutions offer more control through Intersection Observer.

Tree Shaking

Tree shaking is a dead code elimination technique used by modern bundlers like Webpack, Rollup, and esbuild to remove unused exports from the final JavaScript bundle. It relies on the static structure of ES module `import`/`export` syntax to determine which code is actually referenced and safely discard the rest. For tree shaking to work effectively, libraries must use ESM format and avoid side effects in their module initialization, which is why the `sideEffects` field in `package.json` matters.

Design System

A design system is a collection of reusable components, guidelines, and standards that ensure visual and functional consistency across a product or suite of products. It typically includes a component library, design tokens, typography rules, color palettes, and documentation. Design systems bridge the gap between designers and developers, enabling teams to build interfaces faster while maintaining a unified look and feel.

Server-Side Rendering

Server-Side Rendering (SSR) is a technique where web pages are rendered to HTML on the server for each request, rather than relying on client-side JavaScript to build the page in the browser. SSR provides faster initial page loads and better SEO since search engines receive complete HTML content. Modern SSR in frameworks like Next.js supports streaming, allowing the server to progressively send HTML chunks as they become ready rather than waiting for the entire page to render.

BEM

BEM (Block Element Modifier) is a CSS naming convention that structures class names as `.block__element--modifier` to create clear, predictable relationships between HTML and CSS. For example, `.card__title--highlighted` identifies a highlighted title element within a card block. While modern tooling like CSS Modules and utility frameworks have reduced BEM's necessity, it remains widely used in large codebases and design systems where explicit naming conventions aid team coordination.

CSS Modules

CSS Modules are CSS files where all class names are locally scoped by default, meaning they're automatically transformed into unique identifiers at build time to prevent naming collisions. You import them into your JavaScript as an object and reference classes like `styles.button` instead of plain strings. This approach is natively supported by bundlers like Webpack, Vite, and Next.js, offering style isolation without the runtime overhead of CSS-in-JS.

All Words
Matyas.

Web apps, mobile apps, AI automation. I help businesses save time and money with tech that actually works.

Links

  • Services
  • Projects
  • Experience
  • Blog
  • Dictionary
  • Contact

Coming Soon

  • Case StudiesSoon
  • Resources

© 2026 Matyas Prochazka. All rights reserved.