dev-weekly 2025-06-28
CSS
Lightly Poking at the CSS if() Function in Chrome 137
-
크롬 137에 CSS if 함수 추가. 기존에도 조건문이 있었지만 한 라인으로 여러 조건에 따른 스타일을 지정하고 조건부로 결과 반환하는 방법은 없었음
-
e.g.
h1 { font-size: if( media(width >= 1200px): 3rem; media(width >= 768px): 2.5rem; else: 2rem ); }
Nodejs
Serialization from NodeJS
- NodeJS에는 JSON보다 성능좋은 직렬화가 다수 존재. 하지만 최적화 필요할 수 있음.
- 주요 최적화 포인트는 GC 최적화, 버퍼 할당
- 직렬화 성능이 중요하면 NodeJS쓰지 말고 Rust같은거 쓰는게 효율적(직렬화 성능 올리는 것 보다 쉬움)
Javascript
Vite 7.0 is out!
- nodejs 22.12 이상 필요
- default browser target이
module
에서baseline-widely-available
로 변경. build.target의 디폴트 브라우저 버전 변경- 크롬 87 → 107, 엣지 88 → 107, 파이어폭스 78 → 104, 사파리 14 → 16
- vitest 3.2 부터 지원
- https://vite.dev/guide/migration
ETC
A short history of web bots and bot detection techniques
- 웹 봇과 탐지 기법의 발전과정
- IP Reputation, 프록시, TCP 핑거프린팅, TLS 핑거프린팅, JS, 헤드리스 브라우저, 새로운 헤드리스(별도 구현이 아닌 크롬 기반), IPC Flooding, 프록시 디텍션, 캡차, 행동분석 까지의 진화과정
Browser MCP
- AI앱을 브라우저에 연결하여 자동화 가능
Gemini CLI: your open-source AI agent
- Gemini Code Assist https://codeassist.google 와 통합
- https://github.com/google-gemini/gemini-cli