전체 글(42)
-
모던 CSS 완벽 가이드: JS 없이 구현하는 마법, Nesting과 :has()
UI 상태 하나 바꾸겠다고 오늘도 useState와 onMouseEnter를 번갈아 가며 자바스크립트 코드를 짜셨나요?혹은 복잡한 CSS 계층 구조를 잡기 위해 프로젝트 시작부터 습관적으로 Sass(SCSS) 환경부터 세팅하고 계시진 않나요? 이제 무거운 자바스크립트 연산과 외부 전처리기에서 벗어날 때가 되었습니다.2026년 현재, 순수 네이티브 CSS만으로도 우리가 JS로 힘들게 구현했던 수많은 로직들을 단 몇 줄의 코드로 우아하게 처리할 수 있는 시대가 열렸습니다. 불필요한 렌더링을 줄이고 프론트엔드의 성능과 가독성을 한 단계 끌어올려 줄 모던 CSS의 두 가지 마법.이제는 선택이 아닌 필수가 될 수도 있는 Nesting과 :has() 선택자의 진짜 위력을 실무 예제와 함께 살펴보겠습니다. CSS N..
2026.02.23 -
React Server Components (RSC) 완벽 이해하기: 렌더링 아키텍처의 혁신
React 개발자라면 요즘 매일같이 듣는 단어가 있을 겁니다. 바로 'React Server Components(RSC)'죠. "Next.js 13 이후로 그냥 기본으로 쓰는 거 아니야?" 혹은 "기존 SSR(서버 사이드 렌더링)이랑 이름만 다르고 비슷한 거겠지"라고 생각하며 무심코 넘어가셨나요? 만약 여전히 단순한 텍스트나 정적 데이터를 띄우기 위해 수백 KB의 자바스크립트 번들을 통째로 브라우저에 내려보내고 있다면, 여러분은 지금 React 렌더링 패러다임의 가장 거대한 변화를 놓치고 있는지도 모릅니다. '클라이언트'와 '서버'의 경계를 허물고, 번들 사이즈 0(Zero)의 기적을 만들어내는 RSC. 오늘은 매번 헷갈리던 RSC의 진짜 정체와, 왜 이것이 단순한 기능 추가를 넘어 프론트엔드 아키텍처의..
2026.02.23 -
Storybook으로 React 컴포넌트 문서화하기 - 실무 가이드
Storybook으로 React 컴포넌트 문서화하기 - 실무 가이드🎯 왜 Storybook인가?프론트엔드 개발을 하다 보면 이런 상황을 겪게 됩니다:"이 버튼 컴포넌트 어떻게 쓰는 거지?""props가 뭐가 있더라?""디자이너님, 이 상태 확인해 주세요" (매번 로컬 서버 켜기...)Storybook은 이 모든 문제를 해결합니다. 컴포넌트를 독립적으로 개발하고, 문서화하고, 테스트할 수 있는 워크샵이죠.🚀 5분 만에 시작하기설치# 기존 React 프로젝트에 추가npx storybook@latest init설치가 끝나면 자동으로 .storybook 폴더와 예제 스토리가 생성됩니다.실행npm run storybook# http://localhost:6006 에서 확인첫 번째 Story 작성하기Button..
2026.02.11 -
Monorepo에서 Multi-stage Docker Builds 활용하여 NodeJS microservices 최적화된 이미지 만들기 (with. TurboRepo와 PNPM)
원문: https://fintlabs.medium.com/optimized-multi-stage-docker-builds-with-turborepo-and-pnpm-for-nodejs-microservices-in-a-monorepo-c686fdcf051f 아래 번역글은 원문 글쓴이의 허가를 받고 진행한 번역본입니다. 원문 번역 이후에 실제로 프로젝트에 반영하면서 수정, 추가 한 내용들 남기겠습니다. microservices와 monorepo의 세계에서 Docker 빌드를 최적화 하는 것은 효율성과 성능에 중요합니다. 소개 (Introduction)Multi-stage Docker builds는 가벼우면서 효율적인 컨테이너를 생성하는 기술입니다. 그러나 Turborepo와 PNPM를 함께 사용할 때 mi..
2024.05.16 -
프론트엔드에서 타임존 다루기 (Day.js)
최근 프로젝트에서 시간 관련해서 다룰일이 있어서 날짜와 시간 다루는 방법들을 자세하게 알아보게 되었습니다. 타임존(Timezone) ?타임존은 동일한 로컬 시간을 따르는 지역을 의미합니다. 주로 해당 국가에 의해 법적으로 지정됩니다. GMT? UTC ? 오프셋?GMT는 Greenwuch Mean Time의 약자로 그리니치 평균시를 의미하는데 경도 0도에 위치한 영구 그리니치 천문대를 기준으로 하는 태양 시간을 의미한다.UTC는 Coordinated Universal Time/Universal Time Coordinated 의 약자로 지구 자전 주기의 흐름이 늦어지고 있는 문제를 해결하기 위해 세슘 원자의 진동수에 기반한 국제 원자시 기준시간을 의미한다.오프셋협정세계시를 기준으로 조정된시간의 차이를 오프셋..
2024.03.25 -
nvm을 사용하여 프로젝트별 node버전 자동설정하기
nvm? nvm이란 Node Version Manager로, Node.js의 버전을 관리하는 도구입니다. 회사에서 프로젝트를 하다보면 프로젝트별로 다른 Node 버전을 사용하고 있는 경우가 발생하는데 이럴때 사용할 버전을 쉽게 전환 할수 있도록 해줍니다. 설치 NVM문서 curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash homebrew 사용 brew install nvm 추가로 안정화된 노드 최신 버전도 설치해볼께요 nvm install stable 사용방법 원하는 버전의 node 설치 nvm install [node version] # 예시 nvm install v18 내컴퓨터에 설치된 node버전 확인 nvm..
2024.01.04