๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿ’ป DEV/์—ฐ๊ตฌ๋ชฉ๋ก19

[Tip] className ํ‘œํ˜„ ์ข…๋ฅ˜ & Live Template ('cn') ์š”์•ฝ 1. className ํ‘œํ˜„ ์ข…๋ฅ˜- (1) className={} (2) class="" (3) className=' ' 2. className → Live Template์œผ๋กœ ํ™œ์šฉ (cn) ์ƒ์„ธ 1. className ํ‘œํ˜„ ์ข…๋ฅ˜(1) class="" (2) className={} (3) className=' ' // (1) class=''OOO// (2) className={}OOO// (3) className=''OOO HTML์˜ (1) class๋Š” JSX์—์„œ className์œผ๋กœ ์‚ฌ์šฉํ•ด์•ผํ•จ.→ ์™œ๋ƒํ•˜๋ฉด class๋Š” JavaScript์˜ ์˜ˆ์•ฝ์–ด์ด๊ธฐ์— ์‚ฌ์šฉ ๋ถˆ๊ฐ€! JSX์—์„œ๋Š” (2) className={'...'} (3) className="..."๋Š” ๊ฐ™์€ ๊ฒฐ๊ณผ์ฐจ์ด์ ์€.. 2025. 6. 10.
[Tip] lorem ์•ฝ์–ด ๋‹ค๋ฃจ๊ธฐ (feat.html) ์š”์•ฝ 1. lorem ์•ฝ์–ด ์‚ฌ์šฉํ•˜๊ธฐ ์ƒ์„ธ 1. lorem ์•ฝ์–ด ์‚ฌ์šฉํ•˜๊ธฐ1) lorem ์„ html ํƒœ๊ทธ ๋‚ด์— ์ž…๋ ฅํ•˜๊ณ  Tab์„ ํด๋ฆญํ•˜๋ฉด ์ž„์˜์˜ ๊ธ€์ด ์ž๋™์™„์„ฑ๋œ๋‹ค.lorem Lorem ipsum dolor sit amet, consectetur adipisicing elit. Assumenda cupiditate, dolore eaque eligendi facilis inventore itaque minima officiis possimus praesentium, quam qui quidem recusandae sed, sit suscipit tempore! Eius, natus! 2) lorem ๋’ค์— ์ˆซ์ž๋ฅผ ์ž…๋ ฅํ•˜๊ณ  Tab์„ ํด๋ฆญํ•˜๋ฉด ํ•ด๋‹น ์ˆซ์ž๋งŒํผ์˜ ์–ด์ ˆ๋งŒ ํ‘œํ˜„๋ผ ์ž„์˜์˜ ๊ธ€์ด ์ž๋™์™„์„ฑ๋œ๋‹ค.lorem5.. 2025. 6. 10.
[Snippets] Snippets ๋‹ค๋ฃจ๊ธฐ (= live template) ์š”์•ฝ 1. Snippets ์ด๋ž€?- ์ •์˜ (WebStorm์—์„œ๋Š” Live Template)- ์žฅ์  2. Snippets ๋‹ค๋ฃจ๊ธฐ (webstorm)- snippets ์ ์šฉํ•˜๊ธฐ- Snippet Generator์ƒ์„ธ 1. Snippets ์ด๋ž€? [1]. snippets์ด๋ž€? - ์Šค๋‹ˆํŽซ(Snippet)์€ IDE๋‚˜ ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์ฝ”๋“œ ์ž๋™ ์™„์„ฑ์šฉ ๋‹จ์ถ• ์ฝ”๋“œ์ด๋‹ค.(๋ช‡ ๊ธ€์ž์˜ ์ถ•์•ฝ์–ด๋งŒ ์ž…๋ ฅํ•˜๊ณ  Tab ๋˜๋Š” Enter๋ฅผ ๋ˆ„๋ฅด๋ฉด, ๋ฏธ๋ฆฌ ์ €์žฅํ•ด๋‘” ์ฝ”๋“œ๊ฐ€ ์ž๋™์œผ๋กœ ์ž…๋ ฅ๋œ๋‹ค.) [2]. ์žฅ์ 1. ๊ฐœ๋ฐœ ์†๋„ ํ–ฅ์ƒ : ๋ฐ˜๋ณต์ ์œผ๋กœ ์ž‘์„ฑํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ๋‹จ์ถ•์–ด ํ•œ ๋ฒˆ์œผ๋กœ ์™„์„ฑ 2. ์˜คํƒ€ ๋ฐฉ์ง€ : ์ผ๊ด€๋œ ๋ฌธ๋ฒ•์œผ๋กœ ๋น ๋ฅด๊ฒŒ ์ž‘์„ฑ ๊ฐ€๋Šฅ 3. ๊ฐœ๋ฐœ ํ‘œ์ค€ ์œ ์ง€ : ํŒ€ ๊ทœ์น™์— ๋งž์ถ˜ ํ…œํ”Œ๋ฆฟ ์ฝ”๋“œ๋ฅผ ๊ฐ•์ œํ•˜๊ฑฐ๋‚˜ ์ž๋™ ์‚ฝ์ž… 2. Snip.. 2025. 6. 7.
[Webstorm] SSH Key Passphrase ์ธ์ฆ (ํ—ค๋งค์ธ ์Šคํ† ๋ฆฌ) ์ ‘๊ทผ (์š”์•ฝ)๊ฐœ๋ฐœ์„ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋˜ (IDE) IntelliJ Ultimate version ๋ง๊ณ ๋„ Webstorm์ด ๋ฌด์ƒ์ œ๊ณต๋จ(๋น„์˜๋ฆฌ)์„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค.๋”ฐ๋ผ์„œ JavaScript & TypeSript ์ „์šฉ ์›น ๊ฐœ๋ฐœ ํ”„๋กœ์ ํŠธ๋ฅผ ์œ„ํ•ด ์‚ฌ์šฉ์„ ํ•ด๋ณด๋ ค๋‹ค๊ฐ€, ์„ค์ •์—์„œ ํ—ค๋งค์ธ(?) ์Šคํ† ๋ฆฌ๋ฅผ ๋‹ด์Šต๋‹ˆ๋‹ค. ๋‘˜ ๋‹ค JetBrains์‚ฌ์—์„œ ๋‹ค๋ฃจ๋Š” IDE์ด๋‹ค ๋ณด๋‹ˆ ํ•œ ์ชฝ์˜ ํ”„๋กœ๊ทธ๋žจ์—์„œ์˜ settings ๊ฐ’๋“ค์„ ๋‹ค๋ฅธ ํ•œ ์ชฝ์˜ ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ๋ชจ๋‘ import ๋ฅผ ํ•ด์˜ฌ ์ˆ˜ ์žˆ์—ˆ๊ณ , ๊ทธ๋ ‡๊ฒŒ ์ „ ๋ฌด์‹ฌ์ฝ” settings ๊ฐ’๋“ค์„ import ๋ฅผ ํ•ด์˜ค๋ฉด์„œ ๋ชจ๋“  ๋ฌธ์ œ์˜ ์‹œ์ž‘์ด ์žˆ์—ˆ๋˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. WebStorm ๋‚ด VCS์— Github ๊ณ„์ •์ด token์œผ๋กœ ๋กœ๊ทธ์ธ์ด ๋˜์–ด์žˆ์Œ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ ,ํ”„๋กœ์ ํŠธ clone์„ ์œ„ํ•ด rsa(SSH key)๋ฅผ ๋ช…ํ™•.. 2024. 11. 22.
[WebGL - regl] (์ „๋žต) WebGL ์ขŒํ‘œ๊ณ„๋ฅผ ํ”ฝ์…€ ์ขŒํ‘œ๊ณ„๋กœ ๋ณ€ํ™˜ WebGL์˜ ๊ธฐ๋ณธ ์ขŒํ‘œ๊ณ„์™ผ์ชฝ ์œ„: (-1, 1)์˜ค๋ฅธ์ชฝ ์•„๋ž˜: (1, -1)SVG์˜ ๊ธฐ๋ณธ ์ขŒํ‘œ๊ณ„SVG์˜ ๊ธฐ๋ณธ ์ขŒํ‘œ๊ณ„๋Š” ํ”ฝ์…€ ์ขŒํ‘œ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค:์™ผ์ชฝ ์œ„: (0, 0)์˜ค๋ฅธ์ชฝ ์•„๋ž˜: (width, height)1๋‹จ๊ณ„. WebGL ์ขŒํ‘œ๊ณ„ -> ํ”ฝ์…€ ์ขŒํ‘œ๊ณ„ ๋ณ€ํ™˜:WebGL์˜ (-1, 1) -> SVG์˜ (0, 0)์œผ๋กœ ๋งคํ•‘๋˜๊ณ , (1, -1) -> SVG์˜ (width, height)์œผ๋กœ ๋งคํ•‘๋ฉ๋‹ˆ๋‹ค.function webglToPixel(x, y, canvas) { const width = canvas.width; const height = canvas.height; return { x: (x + 1) * 0.5 * width, y: (1 - y) * 0.5 * height };} 2๋‹จ๊ณ„. rel.. 2024. 8. 8.
[WebGL - regl] (2) regl ์˜ˆ์ œ ์† GLSL ์ฝ”๋“œ ํ•ด์„ โ—ผ๏ธŽ ์…ฐ์ด๋” ์ฝ”๋“œ & GLSL ๊ธฐ๋ณธ ์ฝ”๋“œํ•ด์„* ์…ฐ์ด๋” ์ฝ”๋“œ:- Graphics Programming์—์„œ GPU๊ฐ€ ํ™”๋ฉด์— ๋ Œ๋”๋งํ•  ๊ทธ๋ž˜ํ”ฝ์„ ์ œ์–ดํ•˜๊ธฐ ์œ„ํ•ด ์ž‘์„ฑํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ- ๊ทธ๋ž˜ํ”ฝ์Šค ์นด๋“œ์˜ GPU์—์„œ ์ง์ ‘ ์‹คํ–‰์ด ๋œ๋‹ค. → ๋ฒ„ํ…์Šค ์…ฐ์ด๋” (Vertex Shader): ๊ฐ ์ •์ ์˜ ์œ„์น˜๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ณ , ์ •์ ์˜ ์†์„ฑ(์ƒ‰์ƒ, ์ขŒํ‘œ) ์ฒ˜๋ฆฌ- ์ž…๋ ฅ : ์ •์  ๋ฐ์ดํ„ฐ ์ž…๋ ฅ ๋ฐ›์Œ- ์ถœ๋ ฅ : ๋ฐ˜ํ™˜๋œ ์ •์  ์œ„์น˜์™€ ๊ด€๋ จ ์ •๋ณด ์ถœ๋ ฅ → ํ”„๋ž˜๊ทธ๋จผํŠธ ์…ฐ์ด๋” (Fragment Shader): ํ™”๋ฉด์˜ ๊ฐ ํ”ฝ์…€์— ์ƒ‰์ƒ ๊ฐ’์„ ๊ณ„์‚ฐ- ์ž…๋ ฅ : ๊ฐ ํ”ฝ์…€์˜ ๋ฐ์ดํ„ฐ ์ž…๋ ฅ ๋ฐ›์Œ- ์ถœ๋ ฅ : ์ตœ์ข… ์ƒ‰์ƒ ๊ฐ’์„ ํ™”๋ฉด์— ์ถœ๋ ฅ* GLSL: GPU์—์„œ ์‹คํ–‰๋˜๋Š” ์…ฐ์ด๋” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๋Š” ์–ธ์–ด โ—ผ๏ธŽ vec2 : 2์ฐจ์› ๋ฒกํ„ฐ - 2๊ฐœ์˜ ๋ถ€๋™ ์†Œ์ˆ˜์  ๊ฐ’์œผ๋กœ ๊ตฌ์„ฑ(2D .. 2024. 8. 8.
[WebGL - regl] (1) regl ์ด๋ž€? โ—ผ๏ธŽ regl (npm) ์ด๋ž€?→ WebGL์˜ ์ถ”์ƒํ™” ๋ ˆ์ด์–ด, WebGL์„ ๋” ์‰ฝ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ฃผ๋Š” ๊ฒฝ๋Ÿ‰ํ™”๋œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ : ๊ฐ„๋‹จํ•œ ๋ช…๋ น→ WebGL์˜ ๋ณต์žกํ•œ API๋ฅผ ๋‹จ์ˆœํ™”→ ์„ ์–ธํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์Šคํƒ€์ผ ์ง€์› : ๊ณ ์„ฑ๋Šฅ ๊ทธ๋ž˜ํ”ฝ ๋ Œ๋”๋ง์„ ๋ณด๋‹ค ์ง๊ด€์ ์œผ๋กœ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์คŒ โ—ผ๏ธŽ regl ํŠน์ง•→ ๊ฐ„๋‹จํ•œ API : ๋ณต์žกํ•œ WebGL ์„ค์ •์„ ๊ฐ„๋‹จํ•œ ๋ช…๋ น์œผ๋กœ ๋Œ€์ฒด→ ์„ฑ๋Šฅ ์ตœ์ ํ™” : ์ƒํƒœ ๊ด€๋ฆฌ์™€ ๋ช…๋ น ํ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•ด ์„ฑ๋Šฅ ๊ทน๋Œ€ํ™”→ ๋ชจ๋“ˆํ™” : ํŒŒ์ดํ”„๋ผ์ธ๊ณผ ๋ Œ๋”๋ง ๋ช…๋ น์„ ๋ชจ๋“ˆํ™”ํ•ด์„œ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅ โ—ผ๏ธŽ regl ์„ค์น˜npm install (--save) reql# (์ค„์—ฌ์„œ) npm i -S reql# ์ตœ์‹  npm์—๋Š” --save ์˜ต์…˜์ด ๊ธฐ๋ณธ ๋™์ž‘์œผ๋กœ ํฌํ•จ๋ผ ์žˆ๊ธฐ์— ์ƒ๋žตํ•ด๋„ ๋จ โ—ผ๏ธŽ regl ๊ธฐ๋ณธ ์˜ˆ์‹œimpor.. 2024. 8. 8.
[Figma] We can't open that file ์—๋Ÿฌ ํ•ด๊ฒฐ (WebGL) ์ ‘๊ทผ (์š”์•ฝ) Figma๋ฅผ ์‚ฌ์šฉํ•˜๋˜ ์™€์ค‘ ์˜ˆ๊ธฐ์น˜ ์•Š์€ ์—๋Ÿฌ์™€ ๋งž๋‹ฅ๋œจ๋ ธ์Šต๋‹ˆ๋‹ค. "We can't open that file"์ด๋ผ๋ฉฐ ํฌ๋กฌ ๋ธŒ๋ผ์šฐ์ € ๋‚ด WebGL ์„ค์ • ๊ด€๋ จ ์—๋Ÿฌ์˜€์Šต๋‹ˆ๋‹ค. ํ•ด๊ฒฐํ† ๋ก ํ•ฉ์‹œ๋‹ค. 1. ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ 2. ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• 1. ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ Uh oh... we can't open that file we can't open the editor because WebGL isn't supported, or is disabled, in your browser. if your browser supports WebGL, check out this help article to find out how to enable it. 2. ์—๋Ÿฌ ํ•ด๊ฒฐ 1๋‹จ๊ณ„) chrome://flags ์ ‘์† 2๋‹จ๊ณ„) WebGl Dr.. 2023. 12. 13.
[Git] SSH ํ‚ค ์ƒ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ• & SSH ํ‚ค ์ฐพ๋Š” ๋ฐฉ๋ฒ• ์ ‘๊ทผ (์š”์•ฝ) ํ˜•์ƒ๊ด€๋ฆฌ ํˆด Github ์›๊ฒฉ์ €์žฅ์†Œ์—์„œ ํŠน์ • ํ”„๋กœ์ ํŠธ๋ฅผ Pull ๋ฐ›์•„์•ผํ•˜๋Š” ์ผ์€ ๋นˆ๋ฒˆํ•ฉ๋‹ˆ๋‹ค. Pull์„ ๋ฐ›๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ๋Š” ํฌ๊ฒŒ 'HTTPS' ๋ฐฉ์‹๊ณผ 'SSH(key)' ๋ฐฉ์‹์œผ๋กœ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ์กด์— 'HTTPS' ๋ฐฉ์‹์œผ๋กœ ํฐ ์ธ์ฆ ๊ณผ์ •์—†์ด ์‰ฝ๊ฒŒ ํ•˜๋˜ ๊ณผ์ •์„, Github์—์„œ๋Š” ์ง€์–‘ํ•˜๋ผ๊ณ  ๊ถŒ๊ณ ํ–ˆ๊ณ , ๋ณด์•ˆ์— ๋”์šฑ ์œ ๋ฆฌํ•˜๊ณ  ๊ฐ•๋ ฅํ•œ 'SSH(key)' ๋ฐฉ์‹์„ ์ถ”์ฒœํ•˜๊ณ  ์‚ฌ์šฉํ•˜๊ธธ ๊ถŒ์žฅํ–ˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ, ์ด ๋ฐฉ๋ฒ•์„ ์ ‘๊ทผํ•ด๋ณด๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. 1. Git > ๋กœ๊ทธ์ธ > ์šฐ์ƒ๋‹จ Profile > settings > "SSH and GPG keys" 2. SSH ํ‚ค ์กฐํšŒ (์ƒ์„ฑํ–ˆ์—ˆ๋‚˜? ๋กœ์ปฌ์— ์žˆ๋‚˜?) (2.1). (๋กœ์ปฌ) SSH ํ‚ค ์กฐํšŒ (์–ด๋””์—”๊ฐ€ ์กด์žฌํ•  ๊ฒƒ์ด๋ผ๋Š” ๊ณผ๊ฑฐ ๊ธฐ์–ต..) 3. SSH ํ‚ค ์ƒ์„ฑ (3... 2023. 11. 15.