
Our Frontend Tech Stack: Focused On Performance And Scalability

2. Sep 2022
FrontendA regular summary of the most important news, articles or tweets in the frontend world is here! For the month of August, we have prepared the top 6 news that should not be missed by any frontend developer. In addition, here you will find links to other interesting articles that are worth reading.
This month brought some great news to browsers. What I am most looking forward to are the news in CSS, such as container queries or new scale, rotate, and translate properties:
Google Chrome 104 added support for the new media queries entry. For now, only Chrome and Firefox browsers support the new feature, but there is a PostCSS plugin that rewrites the new syntax into the old form. You can find other news in Google Chrome 104 in this article.
// Before:
@media (min-width: 400px) and (max-width: 600px) {
/* Styles for viewports between 400px and 600px. */
}
// Now you can use:
@media (400px <= width <= 600px) {
/* Styles for viewports between 400px and 600px. */
}
Until now, we had to write the transformation functions for the CSS transform property in one. However, from now on we can write scale, rotate, and translate as separate CSS properties. This news will simplify our work, especially with animations. The new notation is supported in all browsers since the release of Google Chrome 104! You can read more about the new CSS transform notation in the article on the web.dev portal.
// Before
.target {
transform: translateX(50%) rotate(30deg) scale(1.2);
}
// Now you can use individual properties:
.target {
translate: 50% 0;
rotate: 30deg;
scale: 1.2;
}
Especially when creating components, we sometimes need to style not based on the entire width of the screen, but only based on the width of the component. This is what container queries are for, which came along with other new features in Google Chrome 105 🎉.
Ahmad Shadeed wrote in his article about container queries that this is a similar big change as when media queries came to styling responsive websites. However, we still have to wait for better support, as container queries are currently only supported by Chrome 105 and Safari 16.
If you use Google Chrome for development, be sure to check out these tips for working in DevTools:
We use Core Web Vitals metrics to analyze website performance. If you're looking for a way to effectively debug these metrics, check out the Performance insights panel in the browser's DevTools. In it, you can view an overview of the website's performance and detect potential problems. You can find more about Performance insights panels in this article.
In DevTools you will find the Animations tab, where you can slow down, replay, adjust the timing of animations and see the results immediately. On the web.dev portal, you can find a video where the panel with animations was analyzed in more detail.
Deno (an alternative to Node.js) is a simple, modern, and secure runtime for JavaScript, TypeScript, and WebAssembly that runs on V8 and is built in Rust. According to what they write on their blog, Deno will soon move forward significantly:
You can also watch a comparison of Deno and Bun.js in the video: Bun and Deno: New Runtimes for the Third Age of JavaScript.
Layout styling in CSS has moved significantly in recent years. In addition to flexbox and grid, we also have aspect-ratio, min, max and clamp functions, logical properties, etc... In addition, subgrid, container queries, :has() pseudo-class and several others are waiting for better support... Therefore, even in CSS the problem is not whether it can be styled, but which way to choose. At the CSS Day 2022 conference, the Creative CSS Layout lecture was on this very topic. If you want to watch a recording of other lectures, you can find them on YouTube.
Thanks to WebAssembly support in Vercel's Edge, you can write your code e.g. in Rust, Go or C to run on a serverless architecture. Any language that can be compiled into Wasm can now be run in Vercel's Edge Functions. You can read more about Wasm and its support in Edge on their blog.
Astro is an all-in-one web framework that was released in August with version 1.0. A little about this framework:
You can find more about this framework on their new website.
If you liked the news overview, don't forget to subscribe to our newsletter. You can also read the news from last month, which we brought in the July Frontend Briefly.