Latest Posts

All blog posts sorted by newest first.

[React] Setting Up Vitest Test Coverage

2026-03-10
Learn how to set up a test coverage measurement environment using @vitest/coverage-v8 in a Vitest-based React project.
see more →

[React] Introducing Vitest to a Jest Project - View Test Separation Strategy

2026-03-09
Learn how to add Vitest to an existing Jest-based React project by separating View tests and logic tests into different runners. Covers setup in a monorepo environment and CI integration.
see more →

[React] Building Component VRT + Accessibility Testing with Vitest

2026-03-08
Sharing how to build VRT (Visual Regression Testing) and accessibility testing for React components using Vitest Browser Mode and Playwright. Covers consistent rendering with Docker and CI integration.
see more →

[React] Building VRT (Visual Regression Testing) with Jest + Puppeteer

2026-03-07
Sharing how to build a VRT (Visual Regression Testing) environment for React components using Jest and Puppeteer. The approach involves server-side rendering components, capturing screenshots with Puppeteer, and comparing them with jest-image-snapshot.
see more →

[React] Building VRT + Accessibility Testing with Storybook Test Runner

2026-03-06
Sharing how to build VRT (Visual Regression Testing) and accessibility testing for React components using Storybook Test Runner and jest-image-snapshot.
see more →

[React] Testing Strategy for Shared Components in a Monorepo

2026-03-05
Sharing the process of establishing a testing strategy for React shared components in a monorepo. We compare Jest, Storybook, and Vitest for View testing with Props/State, event testing, and accessibility testing, and explain why we ultimately chose Vitest.
see more →

[React] Adopting React Compiler in a Monorepo

2026-03-04
Sharing the process of adopting React Compiler across a monorepo with 6 apps and shared packages, including issues encountered along the way — panicThreshold selection, eslint-disable strategies, ref.current false positives, and using the "use no memo" directive for troubleshooting.
see more →

Why GitHub Actions Workflows Don't Re-trigger — GITHUB_TOKEN, PAT, and GitHub Apps

2026-03-03
Learn why pushing with GITHUB_TOKEN in GitHub Actions doesn't trigger other workflows, and compare PAT vs GitHub Apps solutions with a step-by-step GitHub Apps setup guide.
see more →

[React] Practical Guide to React 19 Migration in a Large Monorepo

2026-03-03
Sharing real-world experience upgrading a large monorepo with 7 apps and shared component libraries to React 19. Covers key changes like forwardRef removal, RefObject type unification, useRef initial value requirement, JSX namespace changes, and migration strategies.
see more →

How to Enforce Node.js Versions Across Your Team — Using a Yarn Berry Plugin

2026-03-01
Learn how to enforce Node.js versions across both local development and CI environments by combining .nvmrc, the engines field in package.json, and a custom Yarn Berry plugin.
see more →

[Optimization] Reducing Bundle Size by 82% with lodash Tree Shaking: From 547KB to 97KB

2026-02-28
Sharing the experience of reducing bundle size from 547KB to 97KB (approximately 82%) by changing the lodash import method in a monorepo environment. Covers the entire process from setting up bundle analysis to preventing recurrence with ESLint rules.
see more →

Solving "Argument list too long" Error in GitHub Actions

2026-02-26
Learn about the cause of the "Argument list too long" error that occurs when there are many changed files in monorepo CI, and how to solve it by switching from Bash to JavaScript (actions/github-script).
see more →

SHARE
Twitter Facebook RSS