TECH NOTES
기술노트
현장에서 검증된 개발 지식을 기록합니다.
757473727170696867666564
Frontend
Valibot — Zod보다 가벼운 스키마 검증 라이브러리
Valibot으로 번들 크기를 줄이는 스키마 검증. Zod와의 API·트리 셰이킹 비교, pipe 방식 문법, 변환·배열·유니온·비동기 검증까지 실전으로 정리한 프론트엔드 노트.
Frontend
null과 undefined 차이 — 언제 무엇이 나오나
둘 다 "값이 없음"이지만 의미가 다르다. undefined는 "아직 할당 안 됨", null은 "의도적으로 비움". 언제 뭐가 튀어나오는지 정리한다.
Frontend
TypeScript any·unknown·never 차이와 실전 사용
any는 타입 검사를 끄고, unknown은 검사를 강제하며, never는 절대 없는 값이다. 이 셋을 구분해 쓰면 타입 안전성이 확 올라간다.
Frontend
TypeScript "Type X is not assignable" 자주 만나는 5가지
가장 흔한 타입 에러를 패턴으로 정리. union 좁히기 누락, as const, 인덱스 시그니처, 함수 매개변수 반공변성까지.
Backend
Drizzle ORM 1.0 vs Prisma 6 — 12개 쿼리 실측 + DX 비교
Drizzle 1.0 GA 후 Prisma 6과 정면 비교. 동일 12개 쿼리 실측, 빌드 시간, DX, 마이그레이션 도구까지 솔직 정리.
Frontend
TypeScript 6.0 — decorator metadata API 실전 도입기
TS6의 Stage 3 decorator + Symbol.metadata로 reflect-metadata 폴리필 제거. NestJS·class-validator 마이그레이션 4주.
Database
EdgeDB 6.0 — Postgres 위 모던 ORM 대체, 실제 코드베이스 적용
EdgeDB 6.0을 사내 신규 서비스 백엔드로 1년 운영. EdgeQL의 진가, 스키마 진화, ORM 코드 사라진 실전 후기.
Backend
Elysia 2.0 — Bun 프레임워크로 끝장보는 TypeScript 타입 안전
Bun 위에서 동작하는 Elysia 2.0의 end-to-end 타입 안전. Eden 클라이언트, WebSocket, 플러그인 시스템 실전.
Backend
Effect-TS 3.0 — TypeScript에서 진짜 함수형 만들기
Effect 3.0 실전 도입 6개월. 에러 타입 추적, DI 통합, Promise 대비 학습곡선과 런타임 오버헤드 솔직 정리.
Backend
tRPC v11 + React Query v6 — 풀스택 타입 안전성의 끝판왕
tRPC v11과 React Query v6 결합으로 백엔드-프론트 타입을 한 줄로 공유. 인증·에러·캐싱 패턴과 6개월 운영 회고.
Backend
Drizzle 2.0 — Prisma에서 옮긴 6개월 후일담, 무엇이 좋아졌고 무엇이 어색했나
Prisma → Drizzle 2.0 마이그레이션 6개월 회고. 빌드 시간·번들·DX·런타임 성능 실측, 마이그레이션 함정 정리.
AI
Claude MCP 서버 직접 만들기 — 사내 도구를 Claude에 통합하는 패턴
MCP(Model Context Protocol) 서버를 만들어 사내 시스템을 Claude·Cursor에 통합하는 실전 가이드. TypeScript 구현·배포·인증.