Fork me on GitHub

2024-03-19: Storybook 8, Nuxt 3.11, Cloudflare Workers + Vitest

Translator: rewrite0w0 Edit on GitHub See Revisions

JSer.info #685 - Storybook 8.0가 출시되었어요.

파괴적 변경으로 storiesOf API 삭제, *.stories.mdx 삭제, StoryShots addon 삭제, Yarn v1 지원 종료가 있어요.
상세한 이행 가이드는 참조해주세요.

추가 기능으로, Chromatic와 연계 기능 구현, MSW 사용한 React Server Component(RSC) 지원.
그 외로는, SWC 사용함에 따라 빌드 성능 개선, react-docgen가 기본값이 되도록 변경, react를 peerDependencies에서 제외 변경이 있어요.


Nuxt 3.11가 출시되었어요.

로그 표시 개선, usePreviewMode 추가, appMiddleware 추가가 있었어요.
또한, 서버 전용 .server.vue와 클라이언트 전용 .client.vue 파일명 정의 지원이 있어요.


다음 글에서는, Vitest 사용한 Cloudflare Workers 테스트에 대해 소개해요.

Vitest는 테스트 분리한 Worker에서 실행 가능합니다만, Custom Pool 사용하면 테스트 실행 환경을 독자적 정의가 가능해졌어요.
@cloudflare/vitest-pool-workers에는, Miniflare에서 테스트 코드 실행 가능한 Custom Pool이 구현되었어요.
이에 따라, 로컬에서도 Cloudflre Workers 테스트가 가능해졌으므로 이를 소개하고 있어요.


To support JSer.info


헤드라인


Release 5.11.0 · prisma/prisma

github.com/prisma/prisma/releases/tag/5.11.0

prisma ReleaseNote

Prisma 5.11.0 출시.
Cloudflare Workers(Vercel Edge)에서 Edge function 프리뷰 지원.


Storybook 8

storybook.js.org/blog/storybook-8/

storybook JavaScript Design debug ReleaseNote

Storybook 8 출시.
파괴적 변경으로, storiesOf API 삭제, *.stories.mdx 삭제, StoryShots addon 삭제, Yarn v1 지원 종료.
추가 기능으로, Chromatic와 연계 기능 구현, MSW 사용한 React Server Component(RSC) 지원.
그 외로는, SWC 사용한 빌드 성능 개선, react-docgen가 기본값으로 변경 변경, react를 peerDependencies에서 제외


Bun v1.0.31 | Bun Blog

bun.sh/blog/bun-v1.0.31

Bun ReleaseNote

Bun v1.0.31 출시.
bun --print 추가, Stdin에서 코드 실행 가능하도록, bun add --trust <pkg> 추가, bun pm trust/bun pm untrusted 추가.
fetch()unix 옵션 추가해 Unix Sockets 지원.
Node.js 21.7.0에 추가된 util.styleText 지원


Nuxt 3.11 · Nuxt Blog

nuxt.com/blog/v3-11

Vue library ReleaseNote

Nuxt v3.11 출시.
로그 표시 개선, usePreviewMode 추가, appMiddleware 추가.
서버 전용 .server.vue, 클라이언트 전용 .client.vue 지원


Elysia 1.0 - Lament of the Fallen | ElysiaJS

elysiajs.com/blog/elysia-10

Bun server ReleaseNote

Bun 대상 HTTP 서버 프레임워크 Elysia 1.0 출시.
기동 시간 개선, Type Check 성능 개선, onBeforeHandle같은 곳에서 as 옵션 추가


읽을거리


Server Actions 시대에서 form 라이브러리 conform

zenn.dev/akfm/articles/server-actions-with-conform

Next.js React article

Server Actions 대응한 폼 라이브러리 Conform에 관련하여


Improved Cloudflare Workers testing via Vitest and workerd

blog.cloudflare.com/workers-vitest-integration/

cloudflare vite test article

Vitest에서 Cloudflare Workers 테스트하는 방법에 대하여.
@cloudflare/vitest-pool-workers 사용함에 따라, Worker에 Unit Test를 가능하게 하는 구조에 대해.
Vitest Custom Pool 사용함에 따라, 테스트를 workerd 프로세스 내에서 실행.


Best Practices for Writing Tests with React Testing Library | ClarityDev blog

claritydev.net/blog/improving-react-testing-library-tests

React test article

React Testing Library에서 React 컴포넌트 테스트에 대하여.
컴포넌트를 Role로 select하는 방법이나 디버그하는 방법, userEvent, "not wrapped in act(...)" 경고에 대해


Implementing Vertical Form Controls | WebKit

www.webkit.org/blog/15190/implementing-vertical-form-controls/

webkit CSS safari article

WebKit에서 CSS writing-mode로 세로쓰기 폼 지원.


슬라이드, 영상


에디터 있는 React 개발 환경을 브라우저만으로 구현한 이야기 - Speaker Deck

speakerdeck.com/steelydylan/edeitafu-kinoreactkai-fa-huan-jing-wo-burauzadakedeshi-zhuang-sitahua

React ServiceWorker slide

프리뷰 기능이 있는 에디터 구현에 대한 슬라이드.
에디터 상에서 무거운 처리를 Web Worker 상으로 보내는 방법, Service Worker내에 TypeScript 트랜스파일 구현 등


웹사이트, 서비스, 문서


ECSS — Simple Rules for efficient CSS

ecss.info/en/

CSS document Tools

예측 가능한 CSS 작성하기 위한 디자인 가이드 라인과 stylelint 규칙


소프트웨어, 도구, 라이브러리


guidepup/virtual-screen-reader: Virtual Screen Reader is a screen reader simulator for unit tests.

github.com/guidepup/virtual-screen-reader

accessibility test library

Unit Test 이용 가능한 스크린 리더 시뮬레이터 라이브러리


MistCSS

typicode.github.io/mistcss/

CSS React Tools

CSS에서 React 컴포넌트 작성하는 도구.
CSS 작성해서, 그 CSS에서 Rect 컴포넌트 생성하는 구조.
data 속성을 Props로 다루고, @scope로 스코프 다룸


devongovett/unplugin-parcel-macros

github.com/devongovett/unplugin-parcel-macros

parcel plugin webpack rollup vite esbuild

Parcel의 macro 같은 것을 webpack/rollup/Vite/esbuild에서 이용 가능하게끔 하는 플러그인.
import attributes 구문 사용해 빌드할 때 macro 같은 처리하는 구조

Pull Request to this article
JSer.info Slackに参加する