Rediscovering Modern CSS
The problems we used to solve with JavaScript and preprocessors now have native CSS answers: container queries, :has(), and native nesting.
Category
HTML, CSS and frontend user interface development.
This category has 19 posts.
The problems we used to solve with JavaScript and preprocessors now have native CSS answers: container queries, :has(), and native nesting.
I evaluate React 19's stable-release form actions model by comparing it with previous approaches.
A calm assessment of the Oxide engine and CSS-first configuration approach that Tailwind CSS 4 brings — with the composure a major version bump deserves.
How Pinia replaced Vuex in the Vue ecosystem: less boilerplate, better TypeScript support, and a more mature approach to state management.
How React 18's concurrent render model changes application behavior, and what that means in practice.
I compare the visibility problem that client-side rendering creates for search engines and evaluate server-side rendering alternatives.
I discuss what the Composition API brings over Options API in Vue 3, and when you should prefer it, with concrete examples.
When should you reach for Alpine.js, and when should you not? I discuss the right scale for UI needs that don't require a full framework.
Why I adopted the utility-first CSS paradigm with Tailwind CSS v1.0, the trade-offs I encountered, and when it actually makes sense.
React 16.8 introduced the Hooks API — here's how it shifted component authoring from class-based to functional, what the advantages are, and what to watch out for.
Practical notes on keeping the request/response layer clean in the UI using Axios interceptors, error handling, and shared configuration.
How I shifted from page-centric thinking to component-centric thinking, and how Vue.js makes that shift practical.
What the mobile-first CSS approach is and how to use media queries to keep a single interface looking right across different screen sizes.
Centralizing shared state across components using Vuex: state, mutations, actions, and getters explained.
How I bring structure to growing stylesheets using Sass variables, nested rules, and file partials.
A walkthrough of the core concepts and practical setup I encountered while moving page transitions to the client side with Vue Router.
My experience moving from jQuery DOM manipulation to Vue.js's data-driven approach, and how I wrote my first reactive component.
How to produce decent-looking interfaces without a designer: Bootstrap 3's grid system and ready-made components.
The 2014 standard for decoupling form submissions from full page loads: practical usage of jQuery's $.ajax method.