frontend
Frontend engineering practices, HTML, CSS, JavaScript frameworks, performance, accessibility, and user interface design.
3 articles
A Lunch Conversation Changed My Website

TL;DR How a casual lunch discussion led to rebuilding this site with Astro, modernizing the entire stack, and rethinking it as a personal digital workshop rather than a traditional portfolio.
Some of the most enjoyable projects I've worked on have started in surprisingly ordinary moments. A conversation introduces a new idea, someone shares an experience from their own work, or I come across a different way of approaching a familiar problem. The conversation eventually ends, everyone returns to their daily work, yet one small idea continues to occupy my thoughts. Over the following days that idea slowly grows into documentation, notes, experiments and, occasionally, an entirely new project. Looking back, I can trace many of my favorite learning experiences to moments exactly like these, and rebuilding my personal website became another one of those unexpected journeys.
Read more →Portfolio: a lightweight personal portfolio tracker
TL;DR This post explains the design and implementation of a simple browser based personal portfolio tracker built with React, TypeScript, and Vite, covering requirements, challenges, and solutions for state handling, caching, and charts.
This post explains the design and implementation of a small browser-first portfolio tracker. It focuses on requirements, the challenges encountered, and how the final solution addresses them, including code snippets that illustrate the state handling, caching, and chart interaction.
Read more →Reactjs: Arrays in jsx
TL;DR Quick tip on using JavaScript array map to render dynamic lists of elements in JSX instead of hard coding repeated components for cleaner and more maintainable React code as shown in the Tic Tac Toe board example.
When I tried out Reactjs tutorial few months ago, I noticed that in the official starter code, they repeated same div elements in the render() method, just in case of change in the source, I will list it here:
Read more →