htmx

htmx๋Š” ํ•˜์ดํผ๋ฏธ๋””์–ด ์‹œ์Šคํ…œ์„ ์ง€ํ–ฅํ•˜๋Š” ํ”„๋ก ํŠธ์—”๋“œ ์›น ํ”„๋ ˆ์ž„์›Œํฌ๋‹ค. htmx๋Š” ๋ชจ๋˜ ์›น์ด ์š”๊ตฌํ•˜๋Š” ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ HTML์ด ์ถฉ๋ถ„ํžˆ ์ง€์›ํ•˜์ง€ ๋ชปํ–ˆ๋‹ค๋Š” ๋ฌธ์ œ์˜์‹์„ ๋ฐ”ํƒ•์œผ๋กœ HTML์„ ํ™•์žฅํ•œ๋‹ค๋Š” ๋ชฉํ‘œ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. htmx๋Š” (1) ์›น ์•ฑ์„ ๊ตฌ์ถ•ํ•˜๋Š” ๋งค์šฐ ๊ฐ„๋‹จํ•œ ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•˜๊ณ , (2) ์ฝ˜ํ…์ธ ์™€ API์˜ ๋ณ€๊ฒฝ์— ๊ด€๋Œ€ํ•˜๋ฉฐ, (3) ์บ์‹ฑ๊ณผ ๊ฐ™์€ ๋ธŒ๋ผ์šฐ์ €์˜ ๊ฒ€์ฆ๋œ ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ํ•˜์ดํผ๋ฏธ๋””์–ด์˜ ์žฅ์ ์„ ์‚ด๋ฆฌ๊ณ ์ž ํ•œ๋‹ค.

htmx๊ฐ€ ์ง€ํ–ฅํ•˜๋Š” ํ•˜์ดํผ๋ฏธ๋””์–ด ์‹œ์Šคํ…œ์€ ์„œ๋ฒ„๊ฐ€ ๋ชจ๋“  ์ฃผ๋„๊ถŒ์„ ๊ฐ–๊ณ , ํด๋ผ์ด์–ธํŠธ๋Š” ๊ทธ์ € ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ๋ฐ›์€ HTML์„ ๋ Œ๋”๋งํ•˜๋Š” ์—ญํ• ๋งŒ ํ•œ๋‹ค. ๋ณต์žกํ•œ ์ƒํƒœ๋ฅผ ๊ด€๋ฆฌํ•ด์•ผ ์›น ์•ฑ์—๋Š” ํ•˜์ดํผ๋ฏธ๋””์–ด ์‹œ์Šคํ…œ์ด ์–ด์šธ๋ฆฌ์ง€ ์•Š์ง€๋งŒ, '๋น„์„ ํ˜•์  ํƒ์ƒ‰์ด ๊ฐ€๋Šฅํ•œ ๋งค์ฒดโ€™๋กœ์„œ ์›น์„ ์‚ฌ์šฉํ•˜๊ณ ์ž ํ•œ๋‹ค๋ฉด ํ•˜์ดํผ๋ฏธ๋””์–ด๋Š” ์—ฌ์ „ํžˆ ์ตœ๊ณ ์˜ ์•„์ด๋””์–ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค.

๊ด€๋ จ๋ฌธ์„œ

์ด ๋ฌธ์„œ๋ฅผ ์ธ์šฉํ•œ ๋ฌธ์„œ

  • ์‹ฌํŽ˜์‹œ์Šค
    • ์‹ฌํŽ˜์‹œ์Šค๋Š” Hono์™€ htmx๋ฅผ ์ด์šฉํ•ด ์›น ์‚ฌ์ดํŠธ๋ฅผ ์„œ๋น™ํ•œ๋‹ค.

    • [x] htmx ์ „ํ™˜

  • ์†Œํ”„ํŠธ์›จ์–ด ๊ณตํ•™
  • ใ€ŽHypermedia Systemsใ€
    • htmx๋Š” ํ•˜์ดํผ๋ฏธ๋””์–ด ์ง€ํ–ฅ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋‹ค.

    • htmx๋Š” MPA๊ฐ€ ์•„๋‹ˆ๋‹ค.

    • ๊ถŒ์žฅํ•˜์ง€๋Š” ์•Š์ง€๋งŒ, htmx๋กœ SPA๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

    • htmx๋Š” ์›น์˜ ํ•˜์ดํผ๋ฏธ๋””์–ด ์‹œ์Šคํ…œ์„ ๋Œ€์ฒดํ•˜๋Š” ๋Œ€์‹ , ํ™•์žฅํ•œ๋‹ค.

    • htmx์˜ ๊ฐ„๋‹จํ•œ ์˜ˆ์‹œ๋ฅผ ์‚ดํŽด๋ณด์ž:

    • ์ด์ œ htmx๋กœ ์ด ์›น ์•ฑ์„ ๊ฐœ์„ ํ•ด๋ณด์ž.

    • htmx๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ž‘์„ฑ์„ ์š”๊ตฌํ•˜์ง€ ์•Š๊ณ  HTML์„ ํ™•์žฅํ•œ๋‹ค.

  • ๋ฆฌ์•กํŠธ ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ
    • ๋ฌผ๋ก  ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ์™€ htmx์˜ ๋ฌธ์ œ์˜์‹์€ ์„œ๋กœ ๋‹ค๋ฅด๊ณ , ์„œ๋ฒ„ ์ปดํฌ๋„ŒํŠธ๊ฐ€ ํ•˜์ดํผ๋ฏธ๋””์–ด์˜ ๊ณ ๋„ํ™”๋ฅผ ์œ„ํ•ด ๋งŒ๋“ค์–ด์ง„ ๊ฒƒ๋„ ์•„๋‹ˆ์ง€๋งŒ, ์„œ๋ฒ„์—์„œ ํ™”๋ฉด์„ ๋ Œ๋”๋งํ•œ๋‹ค๋Š” ํ•ต์‹ฌ ๊ฐœ๋…์€ ๊ฐ™์ง€ ์•Š์€๊ฐ€. ๋‹ค์–‘ํ•œ ํ”„๋ ˆ์ž„์›Œํฌ์˜ ์•„์ด๋””์–ด๊ฐ€ ์„œ๋กœ ๋‹ฌ๋ผ๋ณด์ด์ง€๋งŒ, ํ•œ ์ง€์ ์œผ๋กœ ์ˆ˜๋ ดํ•˜๊ณ  ์žˆ๋‹ค.