naver/fe-news ๋‰ด์Šค๋ ˆํ„ฐ ๋ทฐ์–ด (๋น„๊ณต์‹)

๋ชฉ์ฐจ
๋ชฉ์ฐจ

    2023-03

    ๋งํฌ & ์ฝ์„๊ฑฐ๋ฆฌ

    So, what's next?

    ์•„๋งˆ ์—ฌ๋Ÿฌ๋ถ„๋“ค์€ ๋Œ€๋ถ€๋ถ„ ์ธ์ง€ํ•˜๊ณ  ์žˆ๋“ , ์•„๋‹ˆ๋“  core-js๋ผ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ํ™œ์šฉํ•˜๊ณ  ์žˆ์„ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’๋‹ค. core-js๋Š” ํ˜„์žฌ ๊ฐ€์žฅ ๋ณดํŽธ์ ์ธ polyfill๋กœ ๋งค๋‹ฌ npm์—์„œ 250M ๋‹ค์šด๋กœ๋“œ๋ฅผ ๊ธฐ๋กํ•˜๊ณ  ์žˆ๊ธฐ๋„ ํ•˜๋‹ค.

    ์›น ํ˜ธํ™˜์„ฑ์„ ์œ ์ง€ํ•˜๋Š”๋ฐ ํฐ ์—ญํ• ์„ ๋‹ด๋‹นํ•˜๊ณ  ์žˆ์ง€๋งŒ, ์—ฌ๋Ÿฌ ์˜คํ”ˆ์†Œ์Šค ํ”„๋กœ์ ํŠธ๊ฐ€ ๊ทธ๋Ÿฌํ•ด ์™”๋“ฏ ์ง€์†์„ ์œ„ํ•œ ๋ฌธ์ œ์— ์ง๋ฉดํ•˜๊ณ  ์žˆ๋‹ค.

    ๋‹ค์ˆ˜๊ฐ€ ํ˜œํƒ์„ ๋ฐ›๊ณ  ์žˆ๊ณ , ์›น์˜ ํ•œ ์ถ•์„ ๋‹ด๋‹นํ•˜๊ณ  ์žˆ์ง€๋งŒ ์™œ ์ •์ž‘ ํ”„๋กœ์ ํŠธ๋Š” ์ง€์† ๊ฐ€๋Šฅ์„ฑ์— ๋Œ€ํ•œ ๋Š์ž„์—†๋Š” ๋ถˆ์•ˆํ•œ ๋ฏธ๋ž˜์— ์ง๋ฉดํ•˜๊ฒŒ ๋˜๋Š” ๊ฒƒ์ผ๊นŒ?

    Replace Create React App recommendation with Vite

    Replace Create React App recommendation with Vite

    React์˜ ๊ณต์‹ ๋ฌธ์„œ์˜ ์ถ”์ฒœ ๋„๊ตฌ๋กœ ์‹œ๋Œ€์— ๋’ค์ฒ˜์ง„ CRA ๋Œ€์‹  Vite๋กœ ๋Œ€์ฒดํ•˜์ž๋Š” PR์ด ์˜ฌ๋ผ์™”๋‹ค. ์ด์— ๋Œ€ํ•ด ๋ฆฌ์•กํŠธ ๋ฉ”์ธํ…Œ์ด๋„ˆ Dan Abramov์˜ ๋‹ต๋ณ€์ด ๋‹ฌ๋ ธ๋Š”๋ฐ, CRA์˜ ์—ญ์‚ฌ์™€ ์•ž์œผ๋กœ์˜ ๋ฐฉํ–ฅ์„ฑ์— ๋Œ€ํ•ด์„œ ์—ฟ๋ณผ ์ˆ˜ ์žˆ๋Š” ์ข‹์€ ๊ธ€์ด๋ผ ์ƒ๊ฐ๋œ๋‹ค. ํ•ด๋‹น PR๊ณผ ๋‹ต๋ณ€์— ๋Œ€ํ•œ ํ•œ๊ตญ์–ด ๋ฒˆ์—ญ๋„ ์กด์žฌํ•œ๋‹ค.

    Fixing a Memory Leak in a Production Node.js App

    ์‹ค์ œ Node.js ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐ ๊ณผ์ •์„ ์ˆœ์ฐจ์ ์œผ๋กœ ์ž˜ ๋ณด์—ฌ์ฃผ๋Š” ์•„ํ‹ฐํด์ด๋‹ค. ์ €์ž๋Š” Node.js์— ๋‚ด์žฅ๋œ heapdump ๊ธฐ๋Šฅ์„ ์ด์šฉํ•ด ํž™ ์Šค๋ƒ…์ƒต์„ ๋ถ„์„ํ•˜๊ธฐ๋„ ํ•˜๊ณ  Chrome ๊ฐœ๋ฐœ์ž ๋„๊ตฌ๋ฅผ ํ™œ์šฉํ•˜๊ธฐ๋„ ํ•œ๋‹ค. ์—ฌ๋Ÿฌ ๋„๊ตฌ์™€ ๊ธฐ์ˆ ์„ ์กฐํ•ฉํ•ด ๋ฌธ์ œ์ ์„ ์ฐพ๊ณ  ๊ทธ๊ฒƒ์„ ๊ฐœ์„ ํ•ด ๋‚˜๊ฐ€๋Š” ๊ณผ์ •์„ ์—ฟ๋ณด๋ฉด์„œ Node.js ํŠธ๋Ÿฌ๋ธ” ์ŠˆํŒ…์— ๋Œ€ํ•œ ์ธ์‚ฌ์ดํŠธ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ด๋‹ค.

    ๐Ÿ”ฅ JavaScript Memory Management: How to Avoid Common Memory Leaks and Improve Performance

    ์ด๋ฒˆ์—” JavaScript ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜์— ๊ด€๋ จ๋œ ์•„ํ‹ฐํด์ด๋‹ค. JavaScript์—์„œ ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜์˜ ์ผ๋ฐ˜์ ์ธ ์›์ธ์ธ, ์ˆœํ™˜ ์ฐธ์กฐ๋‚˜ ์ „์—ญ๋ณ€์ˆ˜, ํ•ด์ œ๋˜์ง€ ์•Š์€ ์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ ๋“ฑ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜๊ณ  ์ด์— ๋Œ€ํ•œ ํ•ด๊ฒฐ๋ฒ•๋“ค๋„ ์†Œ๊ฐœํ•˜๊ณ  ์žˆ๋‹ค. ๋˜ํ•œ Garbage Collector๋ฅผ ๋งค๋‰ด์–ผ ํ•˜๊ฒŒ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ heap snapshot API, profiler API ๋“ฑ์„ ํ™œ์šฉํ•ด ๋””๋ฒ„๊น…ํ•˜๊ณ  ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์†Œ๊ฐœํ•œ๋‹ค. ๋‹ค๋งŒ ์œ„ ๋ฐฉ๋ฒ•๋“ค์€ ๋น„๊ต์  ์ตœ์‹  ์ŠคํŽ™์ด๋ผ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•œ์ง€ ๋จผ์ € ํ™•์ธ๋˜์–ด์•ผ ํ•  ๊ฒƒ์ด๋‹ค.

    Experiments with the JavaScript Garbage Collector

    ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜๋Š” ๋„๋ฆฌ ํผ์ ธ ์žˆ์œผ๋ฉฐ ๋””๋ฒ„๊น…ํ•˜๊ธฐ ์–ด๋ ต๊ธฐ๋กœ ์•…๋ช…์ด ๋†’๋‹ค. ์ด๋ฅผ ๋ฐฉ์ง€ํ•˜๋ ค๋ฉด ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰ํ„ฐ๊ฐ€ ์ˆ˜์ง‘ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ์ฒด์™€ ์ˆ˜์ง‘ํ•  ์ˆ˜ ์—†๋Š” ๊ฐ์ฒด๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ๋ฐฉ์‹์„ ์ดํ•ดํ•˜๋Š” ๊ฒƒ์ด ๋„์›€์ด ๋œ๋‹ค. ์ด ๊ธ€์€ ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰ํ„ฐ์˜ ๋™์ž‘์ด ์˜์™ธ์ผ ์ˆ˜ ์žˆ๋Š” ๋ช‡ ๊ฐ€์ง€ ์‹œ๋‚˜๋ฆฌ์˜ค๋ฅผ ํ†ตํ•ด ์ด๋ฅผ ์„ค๋ช…ํ•œ๋‹ค.

    [์ฐธ๊ณ ] ์ข€ ๋” ๊นŠ์ด ์žˆ๋Š” ๋‚ด์šฉ์ด๊ธด ํ•˜์ง€๋งŒ, ๋‹ค์Œ ๊ธ€์€ WebKit์˜ JavaScript Core ์—”์ง„์—์„œ GC๊ฐ€ ์–ด๋–ป๊ฒŒ ์ˆ˜ํ–‰๋˜๋Š”์ง€ ์ฒ˜์Œ๋ถ€ํ„ฐ ์ดํ•ดํ•ด ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

    2023 UX/UI Design Trends

    ์˜ฌํ•ด์˜ UX/UI ๋””์ž์ธ ํŠธ๋ Œ๋“œ๋Š” ์–ด๋–ป๊ฒŒ ๋ ๊นŒ? ์•„๋ž˜ ํ•ญ๋ชฉ๋“ค์€ ์ด ๊ธ€์—์„œ 2023๋…„์—๋„ ์œ ํ–‰ํ•  ๋””์ž์ธ ํŠธ๋ Œ๋“œ์— ๋Œ€ํ•ด ๋‚˜์—ดํ•œ ๊ฒƒ์ด๋‹ค.

    • Dark-Anti Modes
    • Custom and Animated Cursors
    • Mobile First Design / Approach
    • Advanced Micro-Interactions
    • 90s Retro style
    • Minimalism
    • Immersive parallax Scrolling
    • 3D Interactive Objects

    ๊ทธ๋Ÿฐ๋ฐ ์•„์ด๋Ÿฌ๋‹ˆํ•˜๊ฒŒ๋„ ์œ„ ํŠธ๋ Œ๋“œ๋“ค์ด 2021 UX/UI ๋””์ž์ธ ํŠธ๋ Œ๋“œ์˜ 2๋…„ ์ „์˜ ํŠธ๋ Œ๋“œ๋“ค๊ณผ ์ƒ๋‹น ๋ถ€๋ถ„ ๊ฒน์นœ๋‹ค.

    ์ด ์ ์ด ์‹œ์‚ฌํ•˜๋Š” ๋ฐ”๋Š” ํŠธ๋ Œ๋“œ๋ฅผ ๋ฐœํ‘œํ•˜๋Š” ์ฃผ์ฒด๋งˆ๋‹ค ๋‹ค๋ฅด๊ฒŒ ํ•ด์„ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋งค๋…„ ๋น„์Šทํ•œ ๊ฒƒ์ด ๋ฐ˜๋ณต๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ƒˆ๋กญ๊ฒŒ ์ถ”๊ฐ€๋œ ๋‚ด์šฉ๊ณผ ์ž‘๋…„์— ๋น„ํ•ด ๋ณ€ํ™”๋œ ํ๋ฆ„์„ ํŒŒ์•…ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

    ๊ฐ ํ•ญ๋ชฉ๋งˆ๋‹ค ๋‹ค์–‘ํ•œ ์‚ฌ์ดํŠธ ๋ฐ ์ƒ˜ํ”Œ์„ ์ œ๊ณตํ•˜๊ณ  ์žˆ์œผ๋ฏ€๋กœ, ์ด๋Ÿฌํ•œ ์˜ˆ์‹œ๋“ค์„ ํ™œ์šฉํ•˜์—ฌ ๋ณ€ํ™”๋˜๋Š” ํ๋ฆ„์„ ํŒŒ์•…ํ•ด ๋ณด๊ธฐ ๋ฐ”๋ž€๋‹ค.

    Try out Css Nesting today

    Safari Technology Preview์—์„œ CSS Nesting์„ ์‹œ๋„ํ•ด ๋ณผ ์ˆ˜ ์žˆ๋‹ค๋Š” ๋‚ด์šฉ์ด ํฌํ•จ๋œ ์›นํ‚ท ๋ธ”๋กœ๊ทธ๊ฐ€ ๋ฐœํ‘œ๋˜์—ˆ๋‹ค. CSS Nesting์€ CSS ๊ทœ์น™์„ ์ค‘์ฒฉ์‹œ์ผœ ์ฝ”๋“œ๋ฅผ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ๋งŒ๋“œ๋Š” ๊ธฐ๋Šฅ์œผ๋กœ, ์ƒˆ๋กœ์šด ์…€๋ ‰ํ„ฐ์™€ ์—ฐ์‚ฐ์ž๋ฅผ ์ œ๊ณตํ•œ๋‹ค. Safari Technology Preview ์‚ฌ์šฉ์ž๋Š” ์ด ๊ธฐ๋Šฅ์„ ์‹œ๋„ํ•ด ๋ณผ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด๋ฅผ ํ†ตํ•ด ์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ๊ณผ ์œ ์ง€ ๋ณด์ˆ˜์„ฑ์„ ๋†’์ผ ์ˆ˜ ์žˆ๋‹ค.

    Web Push for Web Apps on iOS and iPadOS

    Web Push for Web Apps on iOS and iPadOS

    iOS ๋ฐ iPadOS์—์„œ๋„ ์ด์ œ ์›น ์•ฑ์— ์›น ํ‘ธ์‹œ ์•Œ๋ฆผ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋  ์˜ˆ์ •์ด๋‹ค. ์ด์ „๊นŒ์ง€๋Š” ์ด๋Ÿฌํ•œ ๊ธฐ๋Šฅ์ด ์• ํ”Œ ๊ธฐ๊ธฐ์—์„œ๋Š” ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ์—๋งŒ ์ ์šฉ๋˜์—ˆ์ง€๋งŒ, ์ด์ œ๋Š” Safari๋ฅผ ํ†ตํ•ด ์›น ์•ฑ์—์„œ๋„ ์›น ํ‘ธ์‹œ ์•Œ๋ฆผ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

    ์ด๋ฅผ ์œ„ํ•ด, Push API์™€ Service Worker API๊ฐ€ ์ด์šฉ๋˜๋ฉฐ, ์ด ๊ธฐ๋Šฅ์€ iOS ๋ฐ iPadOS 16.4 beta 1๋ถ€ํ„ฐ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค. ์ด ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋ฉด, ์›น ์•ฑ์„ ํ†ตํ•ด ์‚ฌ์šฉ์ž์—๊ฒŒ ๋”์šฑ ํŽธ๋ฆฌํ•˜๊ฒŒ ์ •๋ณด๋ฅผ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์›น ์•ฑ์—์„œ๋„ ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ๊ณผ ๋น„์Šทํ•œ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋‹ค.

    ์›น ํ‘ธ์‹œ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ Badging API, Focus ๋“ฑ์˜ ๊ธฐ๋Šฅ๋„ ์ถ”๊ฐ€๋œ๋‹ค. ์ด๋Ÿฌํ•œ ๊ธฐ๋Šฅ๋“ค์˜ ์ถ”๊ฐ€๋Š” ์›น ์•ฑ ๊ฐœ๋ฐœ ๋ถ„์•ผ์—์„œ ํฐ ๋ณ€ํ™”๋ฅผ ๊ฐ€์ ธ์˜ฌ ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒ๋œ๋‹ค.

    ์• ํ”Œ์˜ ์›น ํ‘ธ์‹œ ์ง€์›์„ ๊ณ„๊ธฐ๋กœ PWA์˜ ํ™•์‚ฐ์„ ๊ธฐ๋Œ€ํ•ด ๋ณธ๋‹ค.

    Youโ€™ve Got Options for Removing Event Listeners

    ๋Ÿฐํƒ€์ž„์— ์ฝ”๋“œ๋ฅผ ์ •๋ฆฌํ•˜๋Š” ๊ฒƒ์€ ํšจ์œจ์ ์ด๊ณ  ์˜ˆ์ธก ๊ฐ€๋Šฅํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐ ์žˆ์–ด ํƒ€ํ˜‘ํ•  ์ˆ˜ ์—†๋Š” ๋ถ€๋ถ„์ด๋‹ค.

    JavaScript์—์„œ ์ด๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜๋Š” ๋” ์ด์ƒ ํ•„์š”ํ•˜์ง€ ์•Š์€ ์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ๋ฅผ ์ œ๊ฑฐํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์ œ๊ฑฐํ•˜๋Š” ๋ช‡ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•๋“ค์ด ์žˆ์œผ๋ฉฐ, ์ด๋“ค์€ ๊ฐ ์ƒํ™ฉ์— ๋”ฐ๋ผ ๋” ์ ํ•ฉํ•œ ๋ฐฉ์‹๋“ค์ด ์กด์žฌํ•˜๋ฉฐ ์–ด๋–ค ๊ฒƒ์ด ๊ฐ€์žฅ ์ ํ•ฉํ•œ์ง€๋ฅผ ๊ฒฐ์ •ํ•  ๋•Œ ์—ผ๋‘์— ๋‘์–ด์•ผ ํ•  ๊ณ ๋ ค ์‚ฌํ•ญ๋“ค์„ ์„ค๋ช…ํ•œ๋‹ค.

    Why Sorting Is Harder Than It Seems

    JavaScript๋กœ ์ •๋ ฌํ•˜๋ ค๋ฉด ์ ์ ˆํ•œ ์ •๋ ฌ ํ•จ์ˆ˜(comparator function)์„ ํ•„์š”๋กœ ํ•œ๋‹ค. ์™œ ๊ทธ๋Ÿฌํ•œ์ง€๋Š” ๋‹ค์Œ์˜ ๊ฐ„๋‹จํ•œ ์˜ˆ์ œ๋กœ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

    [10, 2, 'x'].sort()     // -> [ 10, 2, 'x' ]
    

    ์ด ๊ธ€์€ ๋‹จ์ˆœํ•ด ๋ณด์ด์ง€๋งŒ, ์˜ฌ๋ฐ”๋ฅธ ์ •๋ ฌ์ด ๋ณด์žฅ๋˜๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด ๊ณ ๋ คํ•ด์•ผ ํ•  ์‚ฌํ•ญ๋“ค์„ ๋น„๊ต ํ•จ์ˆ˜๋ฅผ ํ†ตํ•œ ์˜ˆ์ œ๋ฅผ ํ†ตํ•ด ์„ค๋ช…ํ•ด ๋‚˜๊ฐ„๋‹ค.

    ํŠœํ† ๋ฆฌ์–ผ

    A Fancy Hover Effect For Your Avatar

    CSS์˜ gradients, masking, outline, scale ๋“ฑ ๋‹ค์–‘ํ•œ ์†์„ฑ์„ ์ด์šฉํ•ด์„œ ์•„๋ฐ”ํƒ€ ์ด๋ฏธ์ง€๋ฅผ ๋ณด๋‹ค ์—ญ๋™์ ์ด๊ณ  ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒํ•˜๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•˜๋Š” ํŠœํ† ๋ฆฌ์–ผ์ด๋‹ค.

    Speedy CSS Tip! Animated Gradient Text

    CSS์˜ background-clip ๊ณผ linear-gradient ์†์„ฑ์„ ์ด์šฉํ•ด ํ…์ŠคํŠธ์— ๊ทธ๋ผ๋ฐ์ด์…˜ ์• ๋‹ˆ๋ฉ”์ด์…˜ ํšจ๊ณผ๋ฅผ ์ ์šฉํ•ด ๋ณด๋Š” ํŠœํ† ๋ฆฌ์–ผ์ด๋‹ค. ์œ„ ๊ธ€์—์„œ๋Š” background-position์„ ๋ณ€๊ฒฝํ•˜๋ฉด์„œ ์• ๋‹ˆ๋ฉ”์ด์…˜ ํšจ๊ณผ๋ฅผ ์ฃผ๊ณ  ์žˆ๋Š”๋ฐ, ์ด ๊ฒฝ์šฐ ๊ฐœ์ฒด๊ฐ€ ๋งŽ์•„์ง€๋ฉด CPU ์‚ฌ์šฉ๋Ÿ‰์ด ๋†’์•„์งˆ ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์„ ์ฐธ๊ณ  ๋ฐ”๋ž€๋‹ค.

    Building a forum with React, NodeJS

    ์ด ํŠœํ† ๋ฆฌ์–ผ์€ ํฌ๋Ÿผ(๊ฒŒ์‹œ๊ธ€์˜ ์ž‘์„ฑ๊ณผ ๋Œ“๊ธ€ ์ž‘์„ฑ์ด ๊ฐ€๋Šฅํ•œ) ์‹œ์Šคํ…œ์„ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์šธ ์ˆ˜ ์žˆ๋‹ค. ๋˜ํ•œ ์Šค๋ ˆ๋“œ์— ๋Œ“๊ธ€์ด ๋‹ฌ๋ฆด ๋•Œ๋งˆ๋‹ค ์•Œ๋ฆผ(Novu๋ฅผ ํ™œ์šฉํ•œ)์„ ๋ณด๋‚ด๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•œ๋‹ค.

    ์ฝ”๋“œ์™€ ๋„๊ตฌ

    aicommits

    aicommits

    ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€๋งˆ์ € ์ธ๊ณต์ง€๋Šฅ์ด ๋Œ€์‹  ์จ์ฃผ๋Š” ์‹œ๋Œ€๊ฐ€ ๋„๋ž˜ํ–ˆ๋‹ค. aicommits๋Š” git diff ๋‚ด์šฉ์„ OpenAI์˜ GPT-3์— ์ธํ’‹์œผ๋กœ ๋„ฃ์–ด์„œ ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€๋ฅผ ์–ป์–ด๋‚ด๋Š” ๋ฐฉ์‹์œผ๋กœ ๋™์ž‘ํ•œ๋‹ค. ํ•ด๋‹น ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” OpenAI์˜ API Key ๊ฐ’์„ ๋ฐœ๊ธ‰๋ฐ›์•„์•ผ ํ•œ๋‹ค.

    fuse.js

    fuzzy-search๋ฅผ ์ง€์›ํ•˜๋Š” ์˜์กด์„ฑ ์—†๋Š” ๊ฐ€๋ฒผ์šด ๊ฒ€์ƒ‰ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

    Evergreen

    React UI ๋””์ž์ธ ์‹œ์Šคํ…œ.

    Marquee3000

    1990๋…„๋Œ€ ์›น ๋””์ž์ธ์˜ ํ–ฅ์ˆ˜๋ฅผ ๋А๋‚„ ์ˆ˜ ์žˆ๋Š” marquee ํšจ๊ณผ๋ฅผ ์ง€์›ํ•˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ.

    ReacTree

    VS Code ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ์ธ ReacTree๋Š” ๊ณ„์ธต์ ์ธ ๋ถ€๋ชจ-์ž์‹ ์ปดํฌ๋„ŒํŠธ์˜ ๊ด€๊ณ„๋ฅผ ์‹œ๊ฐํ™”ํ•ด์„œ ๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค.

    5kb webgl2 fluid simulation

    ์•ฝ 500์ค„์˜ ์ฝ”๋“œ๋กœ WebGL2 ๊ธฐ๋Šฅ(texelFetch, textureSize, vertex array object)์„ ์‚ฌ์šฉํ•ด ์•ฝ 5KB ๋ฏธ๋งŒ์˜ JavaScript ์ฝ”๋“œ๋กœ ์••์ถ•๋œ Stable Fluid ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ตฌํ˜„์— ๋Œ€ํ•œ ๋ฐ๋ชจ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

    Rubberduck: ChatGPT for Visual Studio Code

    VS Code ํ”Œ๋Ÿฌ๊ทธ์ธ์œผ๋กœ ์‚ฌ์ด๋“œ๋ฐ”๋ฅผ ํ†ตํ•ด AI ์ฑ„ํŒ…์„ ํ†ตํ•ด ChatGPT๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

    Rubberduck์€ ์ฝ”๋“œ ์ƒ์„ฑ, ์ฝ”๋“œ ํŽธ์ง‘, ์ฝ”๋“œ ์„ค๋ช…, ํ…Œ์ŠคํŠธ ์ƒ์„ฑ, ๋ฒ„๊ทธ ์ฐพ๊ธฐ, ์˜ค๋ฅ˜ ์ง„๋‹จ ๋“ฑ์˜ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์‚ฌ์šฉ์„ ์œ„ํ•ด์„  OpenAI API ํ‚ค ๋ฐœ๊ธ‰์ด ํ•„์š”ํ•˜๋‹ค.