GitHub RSS Feed
Home News About us

State of HTML 2023

2024. 5. 22.

State of HTML 2023

State of HTML 2023 ๐Ÿ”—

์‹ฌ์œค์„ญ: HTML์—๋Š” ์–ด๋–ค ๊ธฐ๋Šฅ์ด ์žˆ๋Š”์ง€์™€ HTML์— ๋Œ€ํ•ด ๋‹ค๋ฅธ ์‚ฌ๋žŒ์€ ์–ด๋–ป๊ฒŒ ์ƒ๊ฐํ•˜๋Š”์ง€ ์—ฟ๋ณผ ์ˆ˜ ์žˆ๋Š” ์„ค๋ฌธ์กฐ์‚ฌ ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค. HTML์„ ํ†ตํ•ด ๊ตฌ์กฐ๋ฅผ ์„ค๊ณ„ํ•ด์•ผ ํ•˜๊ณ , HTML์— ๊ด€๋ จ๋œ JS API์— ๋Œ€ํ•œ ์„ค๋ฌธ๋„ ์žˆ์œผ๋ฏ€๋กœ ๋‘˜๋Ÿฌ๋ณด๋ฉด ์ข‹์€ ์„ค๋ฌธ์กฐ์‚ฌ์ž…๋‹ˆ๋‹ค.

Rate Limit ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์‹œ๊ฐํ™”

rate limiter โ€“ smudge.ai blog ๐Ÿ”—

์‹ฌ์œค์„ญ: Rate limit๋Š” ์„œ๋น„์Šค์˜ ํŠธ๋ž˜ํ”ฝ์„ ๊ด€๋ฆฌํ•˜๋Š” ์ค‘์š”ํ•œ ๋กœ์ง์ž…๋‹ˆ๋‹ค. ์œ„ํ—˜ํ•œ ๊ณต๊ฒฉ์ธ Brute force์— ๋Œ€ํ•ด ๋ง‰์„ ์ˆ˜๋„ ์žˆ์ฃ . ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์†Œ๊ฐœํ•˜๋Š” ๊ฒƒ๊ณผ ๋™์‹œ์— ์‹œ๊ฐํ™”๋ฅผ ํ•ด์ฃผ๋Š” ์ข‹์€ ๊ธ€์ž…๋‹ˆ๋‹ค.

ESLint 9.0 ์•ˆ์ •ํ™”

Introducing ESLint Compatibility Utilities - ESLint - Pluggable JavaScript Linter ๐Ÿ”—

ESLint๋Š” ๋งŽ์€ ์ปค๋ฎค๋‹ˆํ‹ฐ์— ์˜ํ•ด ๊ตด๋Ÿฌ๊ฐ‘๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ปค๋ฎค๋‹ˆํ‹ฐ ํ”Œ๋Ÿฌ๊ทธ์ธ๋“ค์˜ ๋ฒ„์ „ ์ง€์›์„ ๊ณ„์† ํ•ด์ฃผ๋Š” ๊ฒƒ์ด ์ค‘์š” ํฌ์ธํŠธ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ESLint๊ฐ€ 9.0์„ ์ง€์›ํ•˜๋ฉด์„œ ๋‚ด๋ถ€ ๋™์ž‘ ๋ฐฉ์‹๊ณผ Flat Config๋ฅผ ์ถœ์‹œํ•ด์„œ ์ด์ „ ๋ฒ„์ „๊ณผ ํ˜ธํ™˜์ด ์•ˆ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์•˜๋Š”๋ฐ ESLint ํŒ€์—์„œ ์ด๋ฅผ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ํ•ด์†Œํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ESLint 9๋ฒ„์ „ ์ง€์›๊ณผ Flat Config ์ง€์›์„ ๋ณด๊ณ  @eslint/eslintrc์™€ @eslint/compat์„ ์ž˜ ์จ์„œ 9๋ฒ„์ „์œผ๋กœ ๋ฒ„์ „์—… ํ•ด์•ผ๊ฒ ๋„ค์š”.

React ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค ๋•Œ ์ƒ๊ฐํ•  ๊ฒƒ

GitHub - alan2207/bulletproof-react: ๐Ÿ›ก๏ธ โš›๏ธ A simple, scalable, and powerful architecture for building production ready React applications. ๐Ÿ”—

์‹ฌ์œค์„ญ: React ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค ๋•Œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ ํƒํ•˜๊ฑฐ๋‚˜ ์ฝ”๋“œ ๋ฐ–์—์„œ ๊ณ ๋ คํ•ด์•ผ ํ•  ๊ฒƒ์€ ๊ณต์‹๋ฌธ์„œ์—์„œ ์•Œ๋ ค์ฃผ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ๊ธ€์€ ์ž์‹ ์˜ ์ฃผ๊ด€๊ณผ ํ•จ๊ป˜ ๊ณ ๋ คํ•  ์ ์„ ์ถ”๋ ค์„œ ์•Œ๋ ค์ฃผ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์™ธ์—๋„ ๋‹ค๋ฅธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ๋‹ค๋ฅธ ๊ณ ๋ คํ•  ๊ฒƒ์€ ๋งŽ์ง€๋งŒ ์ฃผ์š” ๋ถ€๋ถ„์€ ๋ชจ๋‘ ์„ค๋ช…ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

React ๋‚ด๋ถ€ ๋”ฅ ๋‹ค์ด๋ธŒ

React Internals Deep Dive ๐Ÿ”—

์‹ฌ์œค์„ญ: React์˜ ๋™์‹œ๋ชจ๋“œ ์ž‘๋™ ์›๋ฆฌ์—์„œ ๊ฐ€์ ธ์™”๋“ฏ์ด React์—์„œ ๋‚ด๋ถ€ ๊ตฌ์กฐ๋ฅผ ์„ค๋ช…ํ•˜๋Š” ๊ธ€์€ ๋งค์šฐ ๋งŽ์ง€๋งŒ ์ด ๊ธ€์€ ์‹œ๊ฐ์ ์œผ๋กœ ๋ณด์—ฌ์ฃผ๋ฉด์„œ ์นœ์ ˆํ•˜๊ฒŒ ์„ค๋ช…ํ•˜๋Š” ๊ธ€์ด๋ผ๊ณ  ์ƒ๊ฐํ•ด์„œ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค. ๊ธ€์“ด์ด๋„ ๋งํ–ˆ๋“ฏ์ด React์˜ ์ฝ”๋“œ๋Š” ๊ฑฐ๋Œ€ํ•˜๊ณ  ๋ชจ๋‘ ํ•œ๋ฒˆ์— ์ดํ•ดํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค(๋˜ํ•œ ์—…๋ฐ์ดํŠธ๋˜๋ฉด์„œ ๋ฐ”๋€” ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค). ์ฒœ์ฒœํžˆ ์ดํ•ดํ•˜๋ฉด์„œ ๋ณด์„ธ์š”!

Tanstack Query๋ฅผ ์™œ ์จ์•ผ ํ•˜์ฃ ?

Why React Query? ๐Ÿ”—

์‹ฌ์œค์„ญ: Redux saga๋กœ ์„œ๋ฒ„ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์•„์˜ค๋Š” ์‚ฌ๋žŒ๋“ค์—๊ฒŒ๋Š” React Query๋ฅผ ์“ฐ๋Š” ์ด์œ ์— ๋Œ€ํ•ด ์ถฉ๋ถ„ํ•œ ์ดํ•ด๋ฅผ ๊ฐ–๊ณ  ์ ‘๊ทผ์ด ๊ฐ€๋Šฅํ•˜์ง€๋งŒ ์ฒ˜์Œ ์‹œ์ž‘ํ•˜๋Š” ์‚ฌ๋žŒ์—๊ฒŒ๋Š” ์ดํ•ดํ•˜๊ธฐ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ์ด ๊ธ€์€ ์‹œ๊ฐ์ ์œผ๋กœ ๋ณด์—ฌ์ฃผ๋ฉด์„œ ์นœ์ ˆํ•˜๊ฒŒ ์„ค๋ช…ํ•ด์ค๋‹ˆ๋‹ค. Redux ๊ฐœ๋ฐœ์ž๋„ ๋งํ–ˆ๋“ฏ์ด, Tanstack Query๋Š” ์„œ๋ฒ„ ์ƒํƒœ ๊ด€๋ฆฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ด๋ฉฐ, ๋ฌธ์ œ ์ƒํ™ฉ๊ณผ ์ผ์น˜ํ•˜๋Š” ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ๋ฅผ ๋ฐ”๋ผ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ€์šด๋ฐ ์ •๋ ฌ์€ ํž˜๋“ค๋‹ค

Hardest Problem in Computer Science: Centering Things @ tonsky.me ๐Ÿ”—

์‹ฌ์œค์„ญ: ๋ณดํ†ต Flex ๋ ˆ์ด์•„์›ƒ์„ ์‚ฌ์šฉํ•ด์„œ ๊ฐ€์šด๋ฐ ์ •๋ ฌ์„ ํ•˜๊ธฐ ๋งˆ๋ จ์ธ๋ฐ, ์ €์ž๋Š” ๊ทธ๋ž˜๋„ ๊ฐ€์šด๋ฐ ์ •๋ ฌ์ด ์•ˆ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค๋Š” ๊ฒƒ์„ ์ง€์ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์›น ๊ฐœ๋ฐœ์ž๊ฐ€ ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์—ฌ๋Ÿฌ๊ฐ€์ง€ ํ•ด๊ฒฐ์ฑ…์„ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ๋ฌผ๋ก  ์‹ค์ œ๋กœ ๊ฐ€์šด๋ฐ ์ •๋ ฌ์ธ๋ฐ ๋ณด๊ธฐ์—๋Š” ๊ฐ€์šด๋ฐ ์ •๋ ฌ์ด ์•„๋‹Œ ๊ฒฝ์šฐ๋„ ์žˆ์œผ๋ฏ€๋กœ ์™„์ „ํ•œ ํ•ด๊ฒฐ์ฑ…์€ ์•„๋‹™๋‹ˆ๋‹ค.. ๊ฐ€์šด๋ฐ ์ •๋ ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ๋Š” How To Center a Div์„ ์ฐธ๊ณ ํ•˜์…”๋„ ์ข‹์Šต๋‹ˆ๋‹ค.

CSS๋กœ ๋„ํ˜• ๋งŒ๋“ค๊ธฐ

The Modern Guide For Making CSS Shapes โ€” Smashing Magazine ๐Ÿ”—

ํ™ˆํŽ˜์ด์ง€์— ๋„ํ˜•์ด ๋“ค์–ด๊ฐ€๊ฒŒ๋˜๋ฉด ์ด๋ฏธ์ง€๋กœ ๋•Œ์šฐ๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋Œ€๋ถ€๋ถ„์ด์ง€๋งŒ ์–ด๋ ต์ง€ ์•Š์€ ๊ฒฝ์šฐ๋Š” CSS๋กœ๋งŒ ๋„ํ˜•์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ์ด๋Ÿฐ ๊ธฐ๋Šฅ์„ ๋ชจ๋‘ ์™ธ์šธ ํ•„์š”๋Š” ์—†์ง€๋งŒ ์ด๋Ÿฐ ๋„ํ˜•๋„ CSS๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ๋งŒ ์•Œ๊ณ  ๋‹ค์‹œ ์ด ๊ธ€์„ ๋ฐฉ๋ฌธํ•ด๋„ ๋œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

Grid masonry์— ๋Œ€ํ•œ ์ƒ๊ฐ

Iโ€™m worried about the tabbing behaviour, rather than the syntax and name of CSS masonry - Piccalilli ๐Ÿ”—

CSS Grid masonry๊ฐ€ ์•„์ง ์‹คํ—˜์ ์ธ ๋‹จ๊ณ„์ด์ง€๋งŒ Firefox์—์„œ ์š”์†Œ์˜ ์ˆœ์„œ๊ฐ€ ๋งค์šฐ ์ด์ƒํ•˜๊ฒŒ ๋ฐฐ์น˜ํ•˜๋Š” ๊ฒƒ์„ ์ง€์ ํ•˜๋Š” ๊ธ€์ž…๋‹ˆ๋‹ค. ์‹คํ—˜์ ์ธ ๋‹จ๊ณ„์ด๊ณ , ๋‹ค๋ฅธ ๊ณณ์—์„œ ๋งŽ์ด ์‚ฌ์šฉํ•  ๊ฒƒ์€ ์•Œ์ง€๋งŒ masonry layout์— ๋Œ€ํ•ด ๋ชจ๋ฅด๋Š” ์‚ฌ๋žŒ์ด ๋งŽ์„ ๊ฒƒ์ด๋ผ ์ƒ๊ฐํ•ด์„œ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค. JS๋กœ ๊ตฌํ˜„ํ•˜๋ ค๋ฉด ๋„ˆ๋น„์™€ ๋†’์ด๋ฅผ ๊ณ„์‚ฐํ•ด์„œ ๋ฐฐ์น˜ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค(์˜ˆ์‹œ).

Phoenix LiveView๋Š” Next.js์˜ ๊ฟˆ์„ ๊พธ๋Š”๊ฐ€

Phoenix LiveView 1.0.0 is here! - Phoenix Blog ๐Ÿ”—

LiveView์˜ 1.0 ๋ฐฐํฌ๊ฐ€ ๋‹ค๊ฐ€์™”๋‹ค๊ณ  ํ•ด์„œ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค. ์–ด๊ทธ๋กœ ๋Œ๋ ค์„œ ๊ฐ€์ ธ์˜จ ๊ฒƒ๋„ ๋งž๊ตฌ์š”. Blazor์™€ ๋น„์Šทํ•œ ๋ฐฉ์‹(์†Œ์ผ“์œผ๋กœ UI ๋ณ€๊ฒฝ์  ํ†ต์‹ ) ๋งŒ๋“  SSR ํ”„๋ ˆ์ž„์›Œํฌ์ž…๋‹ˆ๋‹ค. ๋งค์šฐ ์ข‹์€ ํ”„๋ ˆ์ž„์›Œํฌ๋ผ๊ณ  ๋ณด๊ธฐ๋Š” ํž˜๋“ค์ง€๋งŒ ์ด๋Ÿฌํ•œ ์ ‘๊ทผ ๋ฐฉ์‹๋„ ์žˆ๋‹ค๋ผ๋Š” ๊ฒƒ์„ ์•Œ์•„๋‘์…จ์œผ๋ฉด ํ•ฉ๋‹ˆ๋‹ค.

Google I/O 2024

Google I/O์—์„œ๋„ Web์— ๋Œ€ํ•œ ๋ฐœํ‘œ๋ฅผ ์ง„ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ์š”์•ฝ์€ Google I/O 2024์—์„œ ๋ฐœํ‘œํ•œ 10๊ฐ€์ง€ ์—…๋ฐ์ดํŠธ: ๋ชจ๋“  ์›น ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ AI ๊ธฐ๋Šฅ ํ™œ์šฉ์„ ์ฐธ๊ณ ํ•˜์„ธ์š”. ์ด์ „์— ์†Œ๊ฐœํ–ˆ๋˜ Chrome ์‚ฌ์ „๋ Œ๋”๋ง API๋„ ์žˆ๋„ค์š”.

Web Feature Status

์›น ํ”Œ๋žซํผ ๋Œ€์‹œ๋ณด๋“œ ๋ฐœํ‘œ  |  Blog  |  web.dev ๐Ÿ”—

4๊ฐœ ๋ธŒ๋ผ์šฐ์ €์˜ ๊ธฐ๋Šฅ ์ง€์› ํ˜„ํ™ฉ์„ ํ•œ๋ฒˆ์— ๋ณด์—ฌ์ฃผ๋Š” ๋Œ€์‹œ๋ณด๋“œ๋ฅผ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. CanIuse์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋Œ€์ฒดํ•  ์ˆ˜๋Š” ์—†์„ ๊ฒƒ ๊ฐ™์ง€๋งŒ ์‹ ๊ทœ ๊ธฐ๋Šฅ์ด ๋ฌด์—‡์ด ์žˆ๋Š”์ง€๋Š” ๋” ์ž˜ ๋ณผ ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

ํ˜„์žฌ JavaScript ํ”„๋ ˆ์ž„์›Œํฌ์˜ ์ƒํƒœ

What's new in JavaScript Frameworks (May 2024)  |  Blog  |  Chrome for Developers ๐Ÿ”—

2024๋…„ 5์›” ํ˜„์žฌ JavaScript ํ”„๋ ˆ์ž„์›Œํฌ์˜ ๊ธฐ๋Šฅ๊ณผ ์•„ํ‚คํ…์ฒ˜๊ฐ€ ๋‹ฎ์•„๊ฐ€๊ณ  ์žˆ์œผ๋ฉฐ, ๊ฐ ํ”„๋ ˆ์ž„์›Œํฌ๋งˆ๋‹ค ์–ด๋–ค ๊ธฐ๋Šฅ์œผ๋กœ ์ฐจ๋ณ„ํ™”๋ฅผ ์ด๋ฃจ๊ณ  ์žˆ๋Š”์ง€ ๋ถ„์„ํ•œ ์ž๋ฃŒ์ž…๋‹ˆ๋‹ค. ๋ฌผ๋ก  ๋‚ด๋ถ€ ๊ตฌ์„ฑ์ด๋‚˜ ์ง€ํ–ฅ์ ์œผ๋กœ ์‚ผ๊ณ  ์žˆ๋Š” ๋ชฉํ‘œ๋Š” ๋ชจ๋‘ ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ์ •๋ง๋กœ ๋ถ„์„ํ•œ๋‹ค๋ฉด ๊ฐ ํ”„๋ ˆ์ž„์›Œํฌ์˜ ๋ธ”๋กœ๊ทธ๋ฅผ ๋ด์•ผ๊ฒ ๋„ค์š”(Angular, React, Remix, Nuxt).

View Transition API

View Transition API๋ฅผ ์‚ฌ์šฉํ•œ ์›ํ™œํ•œ ์ „ํ™˜  |  View Transitions  |  Chrome for Developers ๐Ÿ”—

์—ฌ๋Ÿฌ ํ”„๋ ˆ์ž„์›Œํฌ์—์„œ View Transition API๊ฐ€ ์ง€์›ํ•˜๋Š” ๊ฒƒ์€ ๊ธฐ๋ณธ์ด ๋˜์—ˆ์œผ๋ฉฐ, ๋‹ค์–‘ํ•œ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค(ex. FLIP ์• ๋‹ˆ๋ฉ”์ด์…˜).

Baseline to DX

RUM Archive ๋ฐ RUMvision๊ณผ์˜ ๊ธฐ๋ณธ ํ†ตํ•ฉ  |  Blog  |  web.dev ๐Ÿ”—

RUM ๋ฐ์ดํ„ฐ(์‹ค์ œ ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ)๋ฅผ ์ž˜ ๋ณด์ด๊ธฐ ์œ„ํ•ด RUM ํ†ต๊ณ„๋ฅผ ๊ณต๊ฐœํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ฐœ๋ฐœ์ž๊ฐ€ ๊ฐœ๋ฐœ ๋„์ค‘์— ๋Œ€์ƒ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ํ•ด๋‹น ๊ธฐ๋Šฅ์„ ์ง€์›ํ•˜๋Š”์ง€ ๋ณด์—ฌ์ฃผ๊ธฐ ์œ„ํ•ด ๋„๊ตฌ์— ํ†ตํ•ฉํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

React Conf 2024

Meta์—์„œ 2๋…„๋งŒ์— React ์ปจํผ๋Ÿฐ์Šค๋ฅผ ๊ฐœ์ตœํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ ์ค‘์—์„œ ์ข‹์€ ๊ธ€๊ณผ ํ•จ๊ป˜ ์†Œ๊ฐœํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ๋“ค์„ ๋ชจ์•˜์Šต๋‹ˆ๋‹ค(React 19์˜ ์‹  ๊ธฐ๋Šฅ์€ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์ถœ์‹œ ์†Œ์‹์— ๋„ฃ์–ด๋†จ๋˜ React 19 beta ๊ธ€์„ ์ฐธ๊ณ ํ•˜์„ธ์š”).

Remix์—์„œ ๋‹ค์‹œ React-Router๋กœ

Merging Remix and React Router | Remix ๐Ÿ”—

Remix๋Š” React Router๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋งŒ๋“ค์–ด์ง„ SSR ํ”„๋ ˆ์ž„์›Œํฌ์ž…๋‹ˆ๋‹ค. React ๊ณต์‹๋ฌธ์„œ์—์„œ CRA๋ฅผ ์ถ”์ฒœํ•˜์ง€ ์•Š๊ณ , Remix์—์„œ ๋ฒˆ๋“ค๋ง ํˆด์„ Vite๋กœ ๋ฐ”๊พธ๊ฒŒ ๋˜๋ฉด์„œ(์ด ๊ณผ์ •์—์„œ Remix์—์„œ SPA๋ชจ๋“œ๋ฅผ ์ง€์›ํ•˜๊ฒ ๋‹ค๊ณ ๋„ ํ–ˆ์Šต๋‹ˆ๋‹ค), Remix์™€ React Router๋Š” ๋‹ค๋ฅผ ๊ฒƒ์ด ์—†๋‹ค๊ณ  ์ƒ๊ฐํ•˜๊ฒŒ ๋˜๊ณ , Remix ํŒจํ‚ค์ง€๋ฅผ React Router๋กœ ๋ณ€๊ฒฝํ•˜๋Š” ๊ณผ์ •์„ ๊ฑฐ์น  ๊ฒƒ์ด๋ผ๋Š” ๋ฐœํ‘œ์ž…๋‹ˆ๋‹ค.

RSC React์™€ Node.js๋งŒ์œผ๋กœ๋งŒ ๊ตฌํ˜„ํ•˜๊ธฐ

react-server-components.epicweb.dev ๐Ÿ”—

์ปจํผ๋Ÿฐ์Šค์—์„œ๋Š” ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ ์ง€์›์˜ ์ผ๋ถ€๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ๋งŒ ๋‚˜์™”์ง€๋งŒ, RSC์˜ ๋งŽ์€ ๋ถ€๋ถ„์„ ๊ตฌํ˜„ํ•˜๋Š” ์›Œํฌ์ƒต์„ ๋งŒ๋“ค์—ˆ๊ธธ๋ž˜ ์ด ์›Œํฌ์ƒต์œผ๋กœ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค. RSC๋ฅผ ๋‹ค๋ฅธ ํ”„๋ ˆ์ž„์›Œํฌ๋“ค์ด ์–ด๋–ป๊ฒŒ ๊ตฌํ˜„ํ•˜๋Š”์ง€๋ฅผ RSC์˜ payload๋ถ€ํ„ฐ server action๊นŒ์ง€ ๋ชจ๋‘ ํŒŒ์•…ํ•ฉ๋‹ˆ๋‹ค.

React Compiler

Introducing React Compiler ยท reactwg react-compiler ยท Discussion #5 ยท GitHub ๐Ÿ”—React Compiler: Understanding Idiomatic React โ€“ Joe Savona, Mofei Zhang, React Advanced 2023 - YouTube ๐Ÿ”—

React Compiler์˜ ๋ฒ ํƒ€๋ฒ„์ „์„ ์ถœ์‹œํ•˜๋ฉด์„œ ์–ด๋–ป๊ฒŒ ์“ธ ๊ฒƒ์ธ์ง€์™€ ๋‚ด๋ถ€๋Š” ์–ด๋–ป๊ฒŒ ๋™์ž‘ํ•˜๋Š”์ง€ ๊ฐ„๋žตํ•˜๊ฒŒ ์†Œ๊ฐœํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด์ „์— ์†Œ๊ฐœํ–ˆ๋˜ React ์ปดํŒŒ์ผ๋Ÿฌ์˜ ํƒ€์ž… ์‹œ์Šคํ…œ์˜ ์ €์ž๊ฐ€ Deep dive๋ฅผ ๋ฐœํ‘œํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ธ”๋กœ๊ทธ ๊ธ€์„ ์ฝ์œผ๋ฉด ๋” ์ž˜ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.