์กธ์์ ์ํด์ ๊นํ๋ธ ๋ฆฌ๋๋ฏธ์ ๋์ธ ๋์ ์ธ ์ด๋ฏธ์ง๊ฐ ํ์ํ์์
svgํ์ผ์ ์ฌ์ฉํ๊ธฐ๋ก ํ๊ณ , ๋ฐฐํฌ์ฃผ์/badge/?name={username} ์ ํตํด
์ ์ ์ด๋ฆ์ ๋ฐ์์ค๊ณ , api๋ฅผ ํตํด ์ฌ์ฉ์์ ์ ๋ณด๋ฅผ ๋ฐ์ svg๋ฅผ ๋์ ์ ์์ฑํด์ผํจ
ํ๋ก ํธ์๋ ๋ด๋น์ด๊ธฐ ๋๋ฌธ์ ๋ฆฌ์กํธ๋ฅผ ํตํด ๊ฐ๋ฐํ๊ณ ์ ํ์์
๋ ํผ๋ฐ์ค๋ฅผ ์ฐพ์๋ณด๋ ์๋์ 2๊ฐ์ง ๋ฐฉ์์ผ๋ก ๊ตฌํ๋์์


.svg๊ฐ ์ฌ์ฉ๋ ๋ฐฉ๋ฒ์ ์ด๋ฏธ ๋ง๋ค์ด์ง ์ ์ ์ธ ์ด๋ฏธ์ง๋ฅผ ๋๋ ํ ๋ฆฌ ๊ฒฝ๋ก๋ฅผ ํตํด์ ๊ฐ์ ธ์ด
.svg๊ฐ ์๋ ๋ถ๋ถ์ ๋์ ์ผ๋ก ๋ณํํ๋
<svg></svg>
ํ๊ทธ์์ ์ด๋ฏธ์ง๋ฅผ ๋ง๋ค์ด์ค ์๋์ ๋ฐฉ๋ฒ์ ์ฌ์ฉ
ํด๋น ๋งํฌ๋ก ๋งํฌ๋ค์ด์ ํตํด ๋์ ์ ๋, ๋์ ์ผ๋ก ์์ฑ๋ svg๊ฐ ํ์๋์ด์ผํจ
url์ ํตํด username์ ๋ฐ์์ค๊ณ , api๋ฅผ ํตํด ๊ด๋ จ ์ ๋ณด๋ฅผ ๋ฐ์์์ ๋์์ฃผ๋๋ฐ ์ด๊ฒ์ ๋ฆฌ์กํธ๋ก ๊ตฌํํ๊ณ ์ ํ์์
vite์ pnpm์ผ๋ก ์ธํ
์ ํ๊ณ , gitaction์ ํตํด gitpage์ ์๋๋ฐฐํฌํ์ฌ ๊ณต์ง๋ก ์ด์ฉํ๋ ๊ผผ์๋ฅผ ์ฌ์ฉํ๊ณ ์ถ์์
์์์ ์ธ๊ธํ๋๋ก ๊นํ์ด์ง์ ๋ฐฐํฌ๋ฅผ ํ์์
๋ฆฌ์กํธ๋ฅผ ์ฌ์ฉํด ๊ตฌํํจ
-> ๋ฆฌ์กํธ ์ด๊ธฐ ๋๋ฌธ์
<html><head><body>
์ด๋ฐ ํ๊ทธ๊ฐ ์๋์ผ๋ก ๋น๋๋์ด ๋ถ๊ธฐ ๋๋ฌธ์ ๋งํฌ๋ค์ด ๋ฌธ์์ ํ์ฉํ ์ ์์์
๊ทธ๋์ ๋ฆฌ์กํธ ๋ด์์ ๋ง๋ค์ด์ svg๋ก ์ด๋๋ ์๋ฒ์ ํ์ฌ๋ฅผ ํด์ผ ๋๋ค๋ ๊ฒฐ๋ก ์ ์ป์์์
์ฝ์งํ ๋ด์ฉ์ ๋ฐํ์ผ๋ก ์กธ์ ํ์๋ฅผ ์งํํจ
ํ์ ์ค ๋ฆฌ์กํธ๊ฐ ์๋๋ผ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ ๋ฌด์กฐ๊ฑด์ ์ผ๋ก ์ฌ์ฉํด์ผ ๋๋ค๋ ๊นจ๋ฌ์์ ์ป์
(๋ค๋ฅธ ์ ์ฌ ์๋น์ค๋ค์ ์ฝ๋๋ฅผ ๋ค์ ธ๋ณด๋ ๋ฐฑ์๋ ํ๋ ์์ํฌ๋ค์ ์ฌ์ฉํ ๊ฒ์ผ๋ก ํ์ธ์ด ๋์์)
node.js ์ฌ์ฉ
url์ ๋ฐ์ ์ ๋ณด๋ฅผ ๋ฐํ์ผ๋ก
<svg></svg>
์ด๊ฒ๋ง์ returnํ๋ ์ฝ๋๋ฅผ ๋ง๋ค์
local์ ์๋ฏธ ์๋ค๊ณ ์๊ฐํ์ฌ, cloudtype์ด๋ผ๋ ๊ฒ์ ์๊ฒ๋จ
https://github.com/jamooooong/rankit-badge-node
์ฌ๊ธฐ์ node.js๋ฅผ ํตํด ๋ฐฐํฌ๋ฅผ ์งํ
์ถ๊ฐ์ ์ธ ๋ฌธ์
ํผ๊ทธ๋ง์์ svg๋ฅผ ๋ง๋๋ text๊ด๋ จ ํ๊ทธ๊ฐ ๋ค๊นจ์ง
์ผ๋ฌ์คํธ๋ก ์งํํด์ผ ํ๊ทธ๊ฐ ์๊นจ์ง๊ณ ๊น๋ํ๊ฒ ๋์ด
์ฝ๋ ์์ฒด๊ฐ ์ฌ์์ ๋ณด๋ฉด text์ด๋๋ฅผ ๊ฑด๋ค์ฌ์ผ ํ ๊ฑด์ง ๋์ ๋ณด์
๋งจ๋ ๋ฆฌ์กํธ๋ง ํ๋ค๋ณด๋ ๋ชจ๋ ๊ฒ์ ๋ฆฌ์กํธ๋ก ํ ๋ ค๊ณ ํ๋ ๋ฉ์ฒญํจ์ ๋๊ผ์
node๋ฅผ ์ฒ์ ์ฌ์ฉํด๋ณด์๋๋ฐ ๊ฐ๋จํด์ gpt๋ฅผ ์ฌ์ฉํด์ ์ฝ๊ฒ ๋ง๋ค์์