[Fiber] Deprecate "Throw a Promise" technique by sebmarkbage · Pull Request #34032 · facebook/react
아시다시피 React는 Suspense를 Promise를 던지고 잡는 식으로 구현했는데요.
곧 이 방식을 버리고 React.use(promise)
사용으로 suspend 방법을 일원화 할 것 같아요.
기존 방식의 문제점으로는,
throw Promise
가 같은 흐름으로 섞여 처리돼 에러 처리 로직과 충돌이 쉽게 일어난다등등 다양한 점들을 들고 있어요.
GitHub - feathers-studio/comptime.ts: ⚡️ Compile-time evaluation of expressions for smaller bundles!
컴파일 타임에 정적으로 평가가 가능한 것들을 처리해주는 TypeScript 컴파일러입니다.
예를 들어 const minute = 1_000 * 60
같은 코드를 const minute = 60_000
으로 컴파일해주는 식으로요.
잘 사용하면 emotion도 Zero Runtime CSS-in-JS로 만들어버릴 수 있다고 해요. 서버 컴포넌트랑 조합해서 사용이 가능할지 궁금하네요.
Designing the Built-in AI Web APIs
Chrome built-in AI 팀 개발자가 Web의 Prompt API를 설계하면서 고민한 내용인데요, 온디바이스 AI를 더 많이 사용하게 되면 어떤 느낌일지 볼 수 있어요.
빠르게 발전하는 기술에 대한 API를 설계하면서 고려한 요소들도 재밌네요!
Using the Custom Highlight API
CSS Custom Highlight API를 사용하면 DOM 조작 없이 CSS만으로 하이라이트를 넣을 수 있어요.
크롬, 사파리 지원은 잘 되고 있었고 파이어폭스도 지원을 시작했다고 해요.
GitHub - privatenumber/minification-benchmarks
각종 minify tool의 성능 비교
The Power Of The Intl API: A Definitive Guide To Browser-Native Internationalization — Smashing Magazine
Internationalization API의 강력한 기능을 소개하는 글입니다.
거의 모든 기능이 크로스 브라우저 커버리지가 높아서 알아두면 좋을 것 같아요.
GitHub - microsoft/poml: Prompt Orchestration Markup Language
MS가 프롬프트 엔지니어링에 구조, 유지보수성을 제공하기 위해 고안한 마크업 언어입니다.
<role>
, <task>
같은 HTML 유사 문법으로 모듈화된 설계를 할 수 있고, <table>
, <image>
같은 요소들로 외부 데이터를 유연하게 통합할 수 있어요. VSCode Extension도 제공하고 있고요.
예전에 봤던 것 중 JSX를 가지고 비슷한 시도를 한 라이브러리가 떠오르는데요, 이렇게 마크업을 통해 프롬프트를 작성하는 것이 표준이 될까요?
pnpm 10.14 | pnpm
pnpm이 이제 devEngines.runtime
옵션에 Node.js, Deno, Bun 등을 선택하면 해당 런타임을 프로젝트 내에 설치해줍니다.
워크스페이스 내 각 프로젝트마다 다른 런타임을 쓸 수 있고, 나중엔 컴퓨터 내 공유 위치에 설치되도록 개선될 예정이라고 하네요.
A11y Fundamentals Playground
토스에서 frontend-fundamentals에 계속 내용을 붙여나가네요. 저번엔 번들링에 대한 내용이 추가됐었는데 이번엔 웹 접근성입니다.
위 링크에는 스크린 리더를 직접 체험할 수 있게 해놨는데, 모바일에서 어떤식으로 사용되는지 볼 수 있어서 좋아요.
Accessibility Support
사용하려는 웹 접근성 기술이 얼마나 다양한 스크린리더, 브라우저에서 동작하는지 정리한 서비스입니다.
아직 데이터가 많지 않아 보이지만, Can I Use 같은 느낌으로 참고할 수 있을 것 같아요.
Remote functions • Docs • Svelte
Svelte도 React의 Server Component 비슷한 개념을 가지고 왔네요.
이쪽은 query
, form
, command
, prerender
네가지로 구분지어 다루도록 더 세분화 돼있어요.
GitHub - codpro2005/ts-regexp: A strictly typed & minimal RegExp wrapper.
typesafe RegExp 래퍼!
GitHub - typescript-eslint/tsgolint: ✨ Experimental proof-of-concept typescript-go powered JS/TS linter written in Go
typescript-eslint에서 Go로 포팅된 TypeScript Parser를 활용해 내놓은 POC 프로젝트입니다.
기존 대비 20 ~ 40배의 속도 향상을 목표로 하고 있다고 해요.
GitHub - tc39/proposal-composites
중첩된 객체를 불변으로 생성할 수 있도록 하자는 records / tuples proposal이 있었는데요, (사용례를 잘 설명한 글 참고) 이게 stage 2까지 올라갔다가 거절됐어요.
대신 Composite라는게 논의되고 있네요.
Composite는 두 객체가 동일한 key value 쌍을 갖고 있는지를 보고 비교가 가능하도록 도와줘요.