Today I Learned
Type-safe search params state manager for React
March 28, 2025
useDeferredValue
March 19, 2025
Laws of UX
December 25, 2024
JavaScript's ??= Operator
December 22, 2024
Self improvement notes
December 02, 2024
Clean up your package.json with `per-NODE_ENV` npm scripts.
November 25, 2024
Accessibility basic checklist
November 03, 2024
Difference Between Clearing, Resetting, and Restoring Mocks
October 26, 2024
Vitest Mocking Cheat Sheet
October 26, 2024
The XY Problem
October 13, 2024
Bulletproof React
September 04, 2024
Why books use serif fonts?
September 02, 2024
Freezing a page in DevTools
August 26, 2024
Types of Browser Storage
July 31, 2024
Refactoring UI keynotes (Part 2)
June 19, 2024
Refactoring UI keynotes (Part 1)
June 17, 2024
Leveraging Keys
June 10, 2024
Monkey patching
April 25, 2024
JSR - New package registry
March 25, 2024
Picking breakpoint values
February 12, 2024
Render different HTML tags based on its semantic meaning
January 30, 2024
SWR - React Hooks for Data Fetching
January 23, 2024
Deep cloning object
January 10, 2024
Non-breaking spaces: ` `
January 04, 2024
Multi-line ellipsis
December 31, 2023
React Wrap Balancer
December 26, 2023
The `useId` hook
December 10, 2023
Readability: The Optimal Line Length
December 09, 2023
CSS media feature: prefers-color-scheme
December 03, 2023
Use form controls in search
November 12, 2023
Caching with closures
November 07, 2023
Inline CSS Variables
November 06, 2023
Simple theming approach with CSS variables
October 23, 2023
JavaScript: the ".call", ".bind", and ".apply" methods
October 16, 2023
JavaScript prototype
October 15, 2023
Detect pointing device with media queries
October 15, 2023
async vs defer attributes
October 13, 2023
[CSS] Create a new stacking context with isolation property
October 05, 2023
[CSS] Use outline for focus style
October 03, 2023
One function for all JavaScript package managers
October 01, 2023
Responsive layout grid
September 19, 2023
Mobile-First Responsive Design
August 30, 2023
Update zsh display git default
May 29, 2023
Custom environment variables in CRA
April 23, 2023
Upgrade a NPM package or multiple packages with a pattern
February 27, 2023
Simple state-management: Zustand
January 02, 2023
[CSS] My Global Styles
December 21, 2022
[CSS] Use unitless number for line-height
December 18, 2022
Don't put "outline: none" unless there's a focus style
November 27, 2022
useSafeDispatch custom hook
November 21, 2022
[Example] useReducer
November 20, 2022
[Example] ErrorBoundary
November 13, 2022
yarn create vite
November 06, 2022
Code review pyramid
October 30, 2022
What error/warning solution to use
October 22, 2022
Show all linked modules in use
October 22, 2022
Avoid boolean trap in React component
October 21, 2022
Quickly build custom UI components with https://styled-system.com/
October 18, 2022
[Git] Check number of changes from current branch
May 01, 2022
[CSS] The :empty CSS pseudo-class
April 30, 2022
Strip HTML tags from markup and memoize it with weakMap()
April 23, 2022
Memoization with React.memo
April 02, 2022
[Jest] Avoid using data-testid in test
March 30, 2022
[Example] Request API hook
March 26, 2022
Avoid unnecessary CSS nesting
March 06, 2022
Random number generator with Web Crypto API
February 19, 2022
[TS] Get return type of any function
February 01, 2022
[CSS] Convert #hex notation to color with opacity (#rgba & #rrggbbaa)
January 30, 2022
Create a focus trap area for Accessibility
October 10, 2021
[Example] React Context
September 10, 2021
How to Modal
July 31, 2021
Nullish coalescing operator (??)
July 18, 2021
JavaScript String.prototype.split() with "limit" parameter
July 10, 2021
Implement Memoization in JavaScript
June 19, 2021
Implement useIsMounted hook
May 26, 2021
Upgrade dependencies with "yarn upgrade-interactive"
May 12, 2021
RegEx Named Capture Groups
April 26, 2021
Use Google Sheets as a CMS
April 20, 2021
Declarative vs Imperative Programming
April 18, 2021
Git commands to note
April 15, 2021
A brief introduction of front-end frameworks
April 13, 2021
Why React Hooks?
April 11, 2021
Client-Side Rendering vs Server-Side Rendering vs Static Site Generation
April 05, 2021
React custom hooks for later use
April 02, 2021
Implement mediaQuery helper for styled-component
April 01, 2021
Push query parameter to the URL with `useLocation`
March 30, 2021
Highlight container when the user focuses on one of its child
March 28, 2021
Implement runtime environment variables with Docker and React app
March 25, 2021
Temporary email generator site
March 24, 2021
Free cross browser testing site
March 23, 2021
Testing library for Hooks
March 22, 2021
Today I learned about Today I Learned
March 22, 2021
Home