FE Github README updated!
Server Github README updated!
2023๋ ๊ณ๋ฌ๋ ์ ๋ง์ดํ์ฌ, ์ฃผ๋ณ ์น๊ตฌ์ ์ง์ธ์๊ฒ ๋ง์์ ์ ๋ฌํ ์ ์๋ ํ๊ณ๊ฑฐ๋ฆฌ๋ฅผ ๋ง๋ค์ด ๋ณด์์ต๋๋ค. DJ๋ธ๋๋ฒ๋์์ ์์ ๊ฒ์ ํ ๋ผ ์นด๋๋ ์ปค์คํ ํด๋ณด๊ณ ์ํด์ฒซ๊ณก๋ ๊ณจ๋ผ ์ ๋ฌผํด๋ณด์ธ์.
ํ๋ก ํธ์๋ ๊ฐ๋ฐ์๋ก ์ผ์ ํ๊ฒ ๋์ง ๋ง 2๋ , ์ด์ ์๋ก์ด ํผ์ณ๋ฅผ ๋ฐ๊ณ , ๋ฒ๊ทธ๋ฅผ ํฝ์คํ๋ ๊ฒ์ ์ต์ํ ์ผ์ด ๋์๊ณ , ์ ์ ์ด๋ฐ์ ์ด์ ์ด ์์ด๊ฐ๋ ์์ ์ด์๋ค. ๋ญ๊ฐ ์ ํ์ด ํ์ํ๋ค๊ณ ๋๊ผ๋ค.
์ธ์ ๊ฐ๋ฐ์ด ์ฌ๋ฏธ๊ฐ ์์๊ณ , ์ค๋ ฅ์ด ๋์๋?
์ง๋ฌธํด๋ณด์๋ค. ๋ด๊ฐ ๋ง๋ค๊ณ ์ถ์ ๊ฒ์ ๋ง๋ค ๋, ๊ทธ ๊ณผ์ ์์ ๋ง์ฃผํ๋ ์๋ก์ด ์ด์๋ค์ ํด๊ฒฐํด๋๊ฐ๋ฉฐ ๋์ ์ปดํฌํธ์กด์ ๋๋ ค๊ฐ๋๊ฒ ๊ธฐ์ต์ด ๋ฌ๋ค.
๊ทธ๋! ๋ด๊ฐ ๋ง๋ค๊ณ ์ถ์ ๊ฑธ ํ๋ฒ ๋ง๋ค์ด๋ณด์!
๋ค์ ์๋ ๋งํ๊ฐ์ ์์์ด์ง๋ง ๊ทธ๋ฌํ๋ค. ์ค๋๋ง์ ๋ง๋ค๊ณ ์ถ์๊ฒ ๋ญ์ง ํ๋ฃจ์ข ์ผ ์๊ฐํ๋ค. ๋๋ ๋ฏธ๋๋ฅผ ๋์๋๋ฐ, ํ๋ถ์์ ๊ณผ์ ์ฃผ์ ๋ฅผ ๊ณ ๋ฏผํ๋ ๋์ ๋ชจ์ต์ด ์ค๋ฒ๋ฉ๋๋ค. ํ์ ๋๋ "๋ฌด์์ ์์ ํด์ผํ ๊น"์ ๋ํด ์๊ฐํ๋๊ฒ ๋๋ฌด ์ด๋ ค์ ๋๋ฐ, ์ง๊ธ์ ํ๋ก ํธ์๋ ๊ฐ๋ฐ์ด๋ผ๋ ๋๊ตฌ๊ฐ ์๊ธฐ๋ ๋ด๊ฐ ๊ตฌํ ๊ฐ๋ฅํ ์ฃผ์ ๋ค์ด ๋ง๊ตฌ ๋ ์ฌ๋๋ค!
(์ฌ์ค ํฌ๋ฆฌ์ค๋ง์ค ๊ด๋ จ ํ๋ก์ ํธ์์ผ๋ ์๊ฐ์ ๋ฌธ์ ๋ก ์ ๋ ํ๋ก์ ํธ๋ก ๋ฐ๋๊ฒ ๋์๋ค ^^...)
์ด ๊ณผ์ ์์ ๋์์ด๋ ์น๊ตฌ๋ฅผ ์๋นํ ๊ท์ฐฎ๊ฒ ํ๋๋ฐ ๊ฐ์์น์๊ณ ๋ค ๋ฐ์์ค์ ๊ณ ๋ง๋ค๊ณ ์ ํ๊ณ ์ถ๋ค.
์๋์์๋ ํ๋ก์ ํธ ๊ธฐํ๊ณผ ์ด์, ๋์์ธ, ๊ทธ๋ฆฌ๊ณ ํ๋ก ํธ, ๋ฐฑ์๋ ๊ฐ๋ฐ ๋ง์ง๋ง ๋ฐฐํฌ๊น์ง์ ๋ชจ๋ ๊ณผ์ ์ ๋ํด ์๊ฐ์์ผ๋ก ์ด์ผ๊ธฐํด๋ณด๋ ค๊ณ ํ๋ค. ๊ธ์ด ๊ต์ฅํ ๊ธธ์ด์ง ๊ฒ ๊ฐ๋ค.. ๋ค๋ค ์จ์ฐธ๊ณ LOVE DEV โค
ํ์ฌ์๋ ํ๋ก์ ํธ๋ฅผ ๊ด๋ฆฌํ๋ PM์ด ์กด์ฌํ์ง๋ง, .. ์ค๋! ์ฌ๊ธฐ! ๋ฌด๋ฒ์ง! ๊ทธ ๋ง์ธ ์ฆ์จ, ๋ด๋ง๋๋ก ํ๋ฉด ๋์ง๋ง ์ฑ ์๋ ๋ด๊ฐ ์ง๋ ๊ฒ... ์ผ์ ๊ด๋ฆฌ๊ฐ ์๋๋ค๋ฉด ์ด์ฌํ ๋์์ธํ๊ณ ๊ฐ๋ฐ๋ ๋ค ํ๋๋ฐ ์ ๋ ๋ฐฐํฌ๋ฅผ ํ์ง ๋ชปํ๋ ๋ถ์์ฌ๊ฐ ์๊ธธ ์ ์๋ค. ํ๋ก์ ํธ ๊ด๋ฆฌ๊ฐ ์ ๋ง ์ค์ํ๋ค.
12์ ์ค์ ์ฏค ์์ ์ ์์ํ์๊ธฐ ๋๋ฌธ์ ์๋ฒฝํ ๋์์ธ์ ๋ฐ๊ณ ์น๊ฐ๋ฐ์ ์์ํ๊ธฐ์๋ ์๊ฐ์ด ์ด๋ฐํ ์ํฉ์ด์๋ค. ํ๋ก์ ํธ์์ ๊ทธ๋ํฝ์ ๋งก์ ์น๊ตฌ์๊ฒ ์์ฑ๋ ๋์์ธ์ 12์ 25์ผ๊น์ง ๋ฐ๊ธฐ๋ก ํ๊ณ ๋์์ธ์ด ์์ด๋ ์์ ํ ์ ์๋ ์๋ฒ ๋ฐ DB๋ฅผ ๋จผ์ ์์ ํ๊ธฐ๋ก ํ๋ค.
ํ์ํ API ๊ณํ์ด๋ DB ๊ตฌ์ฑ์ ๊ทธ๋ฅ ๋์ถฉ ๋ ธ์ ํ ์ด๋ธ ์ฌ์ฉํด์ ํ๋ค.
์๋๋ ์ฒ์ ํ๋ก์ ํธ๋ฅผ ์์ํ์ ๋ ๋ง๋ค์๋ ๊ณํํ๋ค. ํ์ฌ์ ๋ณํํด์ผํ๋ ๋๋ถ๋ถ ํด๊ทผ ํ, ์ฃผ๋ง์ ๊ฐ๋ฐํ๋ค. ์ด์ ์์ ๋งํ์ง๋ง ํ์์ ๊ฒ์ผ๋ฆ์ผ๋ก ์ธํด ๊ณ์ ์ผ์ ์ด ๋ฐ๋ ค ๋ฐฐํฌ ์ฃผ์ ์ฃฝ๋์ค ์์๋ค.
์น๊ตฌ๋ ๋ ํฐ๋ง๊ณผ ์นด๋ ๊ทธ๋ํฝ ์์ ์ ํ๊ธฐ๋ก ํด์ ์ฑ ์ ๋ฐ์ ์ธ UXUI ์์ ์ ๋์ ๋ชซ์ด์๋ค. ์ดํ๋ฆฌ์ผ์ด์ ์ด ์ด๋ค ํ๋ก์ฐ๋ก ์งํ๋์ด์ผ ์ ์ ๊ฐ ๋ฌด์ฌํ ์นด๋๋ฅผ ์์ฑํ๊ณ ์น๊ตฌ์๊ฒ ๊ณต์ ํ ์ ์์์ง๋ฅผ ๊ณ ๋ฏผํ๋ค. ์ด์ ์ ๋น์ทํ ํ๋ก์ ํธ๋ฅผ ์งํํด๋ณด์๊ธฐ ๋๋ฌธ์ ์ด ๋ถ๋ถ์ ๋น ๋ฅด๊ฒ ์งํํ๊ณ , ์ด์์ด ์๋ ๋ถ๋ถ์ ๊ฐ๋ฐํ๋ฉฐ ๊ณ ์ณ๊ฐ๊ธฐ๋ก ํ๋ค.
๋ ์ด์์๊ณผ ์ ์ ํ๋ก์ฐ ๊ธฐํ์ ํผ๊ทธ๋ง๋ฅผ ์ฌ์ฉํ์๋ค. ๋์์ธ์ด๋ CSS ๋ณ์๋ ๊ทธ๋ํฝ์ด ๋์ค๋ฉด ๋ณ๊ฒฝ๋ ์ฌ์ง๊ฐ ์๊ธฐ ๋๋ฌธ์ ๋์์ธ์ด ๋์ค๊ณ ๋๋ฉด ์์ ํ๊ธฐ๋ก ํ๋ค.
์ด๋ ๊ฒ ๊ฐ๋จํ๊ฒ๋ผ๋ ๋ ์ด์์์ ์ก๊ฒ ๋๋ฉด, ์ค์ ๊ฐ๋ฐ์ ๋ค์ด๊ฐ๊ธฐ ์ ์ ํ๋ก์ฐ์ ์ด๋ค ์ค๋ฅ๊ฐ ์๋์ง, ํ๋ฉด์ ๋ง์ฃผํ ์ ์ ๊ฐ ์ด๋ค ๊ฐ์ ์ ๋๋์ง๋ฅผ ๋ฏธ๋ฆฌ ํ์ ํ ์ ์๋ค. ๋ผ์ฐํ ์์ ๋ค ํ๊ณ , ๋ก์ง๋ ๋ค ๋ง๋ค์๋๋ฐ ๋ง์ ์๋น์ค๋ฅผ ํ ์คํธํ ๋ "์..? ์ด๊ฒ... ๋ญ์ง?" ํ๋ ์ฌํ๋ฅผ ๋ฐฉ์งํ ์ ์๋ค.
๋ ๋์์ด๋์๊ฒ๋ ์ด๋ฐ ์์ฒญ์ ํ ์ ์๋ค.
๋ฐ๋๋ก ๋์์ด๋์ ํผ๋๋ฐฑ์ ๋ฐ์ ์๋ ์๋ค.
์ด ๊ณผ์ ์์๋ ๋์์ด๋๊ฐ ์ํ๋ ์ ๋๋ฉ์ด์ , ๋ชจ์ ๋ฑ์ ์บ์นํด์ ๋ฏธ๋ฆฌ ๊ตฌํ์ด ๊ฐ๋ฅํ ์ง ๊ฒํ ํ๋ ๊ฒ๋ ํฌํจ๋์๋ค. ํผ์ ํ๋ก์ ํธ๋ฅผ ํ์๋ ๋ถ๋ค์ด๋ผ๋ ๊ผญ UI๋ ๋ฏธ๋ฆฌ ๊ตฌ์ํ๊ณ ๋์ ๊ฐ๋ฐ์ ๋ค์ด๊ฐ์๊ธธ ๊ฐ๊ถํ๋ ๋ฐ์ด๋ค! ํนํ ํผ๊ทธ๋ง๋ ๋ฌด๋ฃ๋ก ์ฌ์ฉํ ์ ์๊ณ , ๋งค์ฐ ์ฌ์ด ํด์ด๊ธฐ ๋๋ฌธ์ ์ถ์ฒํ๋ค.
๋ฏธ๋ฆฌ ์ด์ผ๊ธฐํ์๋ฉด, ํ์๋ node.js๋ก ๊ฐ๋จํ ์คํฌ๋ฆฝํธ ์ ๋๋ง ์์ฑํด๋ณด์์ง ์น ์๋ฒ ์์ ์ ํด๋ณธ ์ ์ ์์๋ค. ๋๋ฌธ์ ์ด๊ฒ ์ ๊ฒ ๊ตฌ๊ธ๋ง์ ํ๋ค ๊ทธ๋ฅ ์ ํ๋ธ ๋ณด๊ณ ๋ฐ๋ผํ๋ค. ใ ใ ใ ์กฐ์ฝ๋ฉ ์ ํ๋ธ ์ข์์..
์ด๋ฐ ๊ธฐํ์ Spotify API๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ ๊ฐ ์์ ์ ๊ฒ์ํ์ฌ ๊ณ ๋ฅด๊ฒ๋ ํ๋ ค ํ๋ค. ์ค์ ๋ก ๊ตฌํํ๊ณ ๋ณด๋ ์ ํ์ง๋ฅผ ์ฃผ๋๊ฒ ์ ์ ๊ฒฝํ์ ๋ ๋ซ๊ฒ ๋ค๋ ํ๋จ์ด ๋์๊ณ , ์์ ๋ฆฌ์คํธ๋ฅผ ํ๋ก ํธ์์ ๊ฐ์ง๊ณ ์๋ ๋ฐฉํฅ์ผ๋ก ๋ณ๊ฒฝํ์๋ค.
๋ ํ๋ก์ ํธ์์๋ ๋ธ๊ธ์ ์ฌ์ํด์ผ ํ๋๋ฐ, ์คํฌํฐํ์ด๋ ์ ์๊ถ ์ด์๊ฐ ์์ด ์คํฌํฐํ์ด๋ณด๋ค๋ ์ ํ๋ธ ํ๋ ์ด์ด๋ฅผ ํ์ฉํ๋ ์ชฝ์ผ๋ก ๋ณ๊ฒฝํ์๋ค.
Spotify API๋ก ๋ง๋ ๊ฒ์ ํจ์๋ ์์ ํ์ฌ ์ดํ ์ํด ์ฒซ๊ณก ๋ฐ์ดํฐ๋ฅผ ๋ง๋ค ๋ ์ ์ฉํ๊ฒ ์ฌ์ฉํ๋ค.
์๋ฒ๋ express๋ฅผ ์ฌ์ฉํ์๊ณ , ์นด๋ ๋ฑ๋ก, ์นด๋ ์กฐํ ๋ ๊ฐ์ API๋ง ์์ ํ๋ฉด ๋์๊ธฐ ๋๋ฌธ์ ์๊ฐ๋ณด๋ค ๋ง์ ์ฝ๋๊ฐ ํ์ํ์ง ์์๋ค. ์ฌ์ค ์๋ฌ ํธ๋ค๋ง์ ๋ ์ธ์ธํ๊ฒ ํด๋ณด๊ณ ์ถ์๋๋ฐ, ๋งํ์ ๋ ์ฐ์ ์์ ์ด์๋ฅผ ์ฒ๋ฆฌํ๋๋ผ ๋ฐ๋๋ผ์ธ ์์ ์์ ํ์ง ๋ชปํ๋ค.
์ฐ๋ฆฌ ์๋น์ค๋ 1์ 1์ผ๋ถํฐ ์นด๋ ์กฐํ๊ฐ ๊ฐ๋ฅํ๊ฒ๋ ํ๊ธฐ ๋๋ฌธ์, ํด๋น id์ ์นด๋๊ฐ ์กด์ฌํ์ง๋ง, ์ํด๊ฐ ์๋ ๊ฒฝ์ฐ์๋ ๋ณด๋ด๋ ์ด์ ๋ฐ๋ ์ด์ ์ ๋ณด๋ง์ ๋ด๋ ค๋ณด๋ด ํ๋ก ํธ์ ๋ ธ์ถํ๋๋ก ํ๋ค.
์ด๋ ๊ฒ ํ๋ฉด, ์นด๋๋ฅผ ๋ฐ์ ์ฌ๋์ ๋งํฌ์ ์ ์ํ์ ๋ ์์ ์ ์ด๋ฆ์ด ๋ ธ์ถ๋๋ ํ์ด์ง๋ฅผ ๋ณด๊ณ '๋'์๊ฒ ํธ์ง๊ฐ ์๋ค๋ ์ง์ ์ ์ธ ๋๋์ ๋ฐ์ ์ ์์ ๊ฒ์ด๋ผ ์๊ฐํ๊ธฐ ๋๋ฌธ์ด๋ค. (๊ฐ์๊ธฐ UX ์๊ธฐ..)
์ฌ๊ธฐ๊น์ง๋ ๋ณ ๋ฌธ์ ์์ด ์งํ๋์์ผ๋, ๋ฐฐํฌ ํ์ ๋ด๊ฐ ์์ฒญ๋ ์ค์๋ฅผ ํ๋ค๋ ๊ฒ์ ๋ฐ๊ฒฌํ๊ฒ ๋๋ค. ์ด๊ฑด ๋ฐฐํฌ ์น์ ์์ ์ด์ผ๊ธฐ ํด๋ณด๊ฒ ๋ค.
๋๋ฅผ ๊ดด๋กญํ๋ ๊ฒ์ ์ด ๋ค์ ๋ฌธ์ ์๋ค.
๋๋ง์ ๋ชฝ๊ณ ๋๋น.. ์๋ฒ ๊ฐ๋ฐ๊น์ง๋ ์ด๊นจ ๋๋จธ๋ก ๋ง์ด ๋ด์์ ์ต์ํ์ง๋ง, DB๋ ๋ญ๊ฐ ๋ค๋ฅธ ์ธ์์ด๋ผ๊ณ ์๊ฐํ๋ ๊ฒ ๊ฐ๋ค. ํ๋ก ํธ์๋ ๊ฐ๋ฐ๋ง ํ๋ค๋ฉด DB๋ฅผ ์ง์ ์ ์ผ๋ก ๋ค๋ฃฐ ์ผ์ ์๊ธฐ ๋๋ฌธ์ด๋ค. ์ฌ๋ฌ ์ ํ์ง๊ฐ ์์์ง๋ง ๊ฐ์ฅ ์๋ฃ๊ฐ ๋ง์ mongoDB Atlas๋ฅผ ์ฌ์ฉํ๊ธฐ๋ก ํ๋ค.
๋์ด์ผ๋ณด๋ฉด ์ด์ด์์ผ๋ฆฌ๋งํผ ๊ฐ๋จํ ์ด์์๋๋ฐ, ๋ต์ ๋ชป์ฐพ์์ ํ์ฐธ์ ํค๋งธ๋ค...
MongooseError [MongooseServerSelectionError]: connection <monitor> to ip address closed
์ด๋ฒ ๊ฒฝํ์ ํตํด ๋ค์ ๋ฐฐ์ด๋ค. ์๋ฌ๊ฐ ๋๋ฉด ์๋ฌ ๋ฌธ๊ตฌ๋ฅผ ์ ๋ฐ.. ์ฝ์.
ํด๋น ์ด์๋ ํ์ฌ MongoDB์ ์ ๊ทผํ๋ ค๋ ip๊ฐ ํ์ฉ๋ ip๊ฐ ์๋๊ธฐ ๋๋ฌธ์ ์ผ์ด๋๋ ์ด์์ด๋ค. ์ด๋ ๋ชฝ๊ณ ๋๋น์์ ip๋ฅผ ์ถ๊ฐํด์ฃผ๊ธฐ๋ง ํ๋ฉด ํด๊ฒฐ์ด ๋๋ค.
Project - Network Access - [ ADD IP ADDRESS ] ๋ฒํผ ํด๋ฆญ ํ ๋ ธ์ถ๋๋ ํ์ ์์ [ ADD CURRENT IP ADDRESS ] ํด๋ฆญํด์ฃผ๋ฉด ๋๋ค.
์ฌ๊ธฐ์ ip address์ 0.0.0.0
์ ์
๋ ฅํ๋ฉด ๋ชจ๋ ip๋ฅผ ํ์ฉํ ์ ์๋ค.
๊ทผ๋ฐ, ์ด๋ ๊ฒ ํ๋๋ฐ๋ ์ ๊ทผ์ด ์๋๋ค๊ตฌ์? ๋ค ์ ์ค์ จ์ต๋๋ค. ^^. ... ... .. .. .... .. ...
{ Error: querySrv ENODATA _mongodb._tcp.blog-cluster-0hb5z.mongodb.net
at QueryReqWrap.onresolve [as oncomplete] (dns.js:197:19)
errno: 'ENODATA',
code: 'ENODATA',
syscall: 'querySrv', Blog/app.js:54:14
hostname: '_mongodb._tcp.blog-cluster-0hb5z.mongodb.net' }
hoxy... .. .... ์นดํ์ ๊ณ์ ๊ฐ์? ํน์.. ... .... ๋ณ๋ค๋ฐฉ์ธ๊ฐ์?
์คํ๋ฒ ์ค wifi ํ๊ฒฝ์์ mongoDB์ ์ ๊ทผ ์ ์์ ๊ฐ์ ์๋ฌ๊ฐ ๋ฌ๋ค. ์ด๋ ํด์ธ์์๋ ๋์ผํ๊ฒ ๋ฐ์ํ๋ ์ด์๋ผ๊ณ ํ๋ค. ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์๋ DNS๋ฅผ ์์ ํ๋ ๋ฐฉ๋ฒ๋ ์๊ณ ๊ทธ๋ฅ ์ง์์ ๊ฐ๋ฐ์ ํ๋ค...๋ ๊ฒ๋ ์ข์ ์ด์ด์ค..
์ํผ ๋๋ ์ ์ด์ ๋๋ฌธ์ ์์คํ.. ใ _ใ ํผ๊ฐ์ ์ฃผ๋ง์ ํ๋ฃจ ๋ ๋ ธ๋ค. ๋๋ฌด ์ฌํ์ง๋ง ์ดํ ๊ฐ๋ฐ ๊ธฐ๊ฐ ๋์์๋ ์ค๋ฒ ์ผ์ฌ๋ ์ํ ํ์ ์ปคํผ๊ฐ์ ์๋ ์ ์์๋ค๋ ํ๋ฌธ์ด.
์คํ์ค๋ฒํ๋ก์ฐ - ์คํ๋ฒ ์ค์์ ๋ชฝ๊ณ ๋๋น ์ ์์ด ์๋ผ์ ํํ!
์ฌ๋ฌ ์๊ฐ์ ์ฝ์ง ๋๋ฌธ์ธ์ง ์ฒ์ ๋ฐฑ์๋์์ ๋ชฝ๊ณ ๋๋น๋ก insert ์์ฒญ์ด ์ฑ๊ณตํ์ ๋ ์ง๋ฆฟํจ์, ์ฒ์ ํ๋ก ํธ์๋ ๊ฐ๋ฐ์ ๋ฐฐ์ฐ๊ณ ์๋ฒ์ ํํ์ ์ฑ๊ณตํ์ ๋์ ๊ฐ์๋ค...! ๋ค์ ํ๋ก์ ํธ๋ ํ ์๊ฐ์ด๋ฉด ๋๋ฑ ํ๊ฒ ์ง? ํํณ
ํ๋ก ํธ์๋... ๊ฐ์ฅ ๋ง์ ์๊ฐ์ ์์๋ค. ๊ฐ๋ฐํ๋ฉด์ ๋ฐค๋ ๋ง์ด ์๊ณ , ์ํ๋ ์ ๋๋ฉ์ด์ ์ด ๊ตฌํ๋์ง ์์ ๊ฐ์ ํ ์คํธ๋ฅผ ์์ญ๋ฒ ๋๋ฆฐ ์๊ฐ.
ํ๋ ์์ํฌ๋ ์ต๊ทค๋ฌ๐ซถ๋ฅผ ์ฌ์ฉํ๊ณ , ์นด๋๋ฅผ ์ปค์คํ
ํ ๋ ์นด๋, ๋ ํฐ๋ง, ๋ฐฐ๊ฒฝ์, ๋ฐฐ๊ฒฝ ํจ๊ณผ, ์นด๋์ ๋ด์ฉ, ์์
๋ชจ๋ ํผ์ผ๋ก ๊ด๋ฆฌํ๋๋ก ์์
ํ๋ค. ์ต๊ทค๋ฌ๋ ํผ(form)์ ์์
ํ๊ธฐ์ ๋๋ฌด ํธํ๊ฒ ์
ํ
๋์ด ์๊ธฐ ๋๋ฌธ์ด๋ค. (์ฌ๊ธฐ ์ต๋ฐ์ ์์ด์...!)
์๊ฐ์ด ์ข ๋ ๋ง์๋ค๋ฉด ์ํคํ ์ณ๋ฅผ ์ข ๋ ๊ณ ๋ฏผํด๋ณด๊ณ ์ปดํฌ๋ํธ๋ก ์ ์ชผ๊ฐ์ด ์์ ํ์ํ ๋ฐ, ๊ทธ๋ฌ์ง ๋ชปํ๊ฒ ์ข ์์ฝ๋ค. 24์ผ์ ๊ทธ๋ํฝ ์๋ฃ๋ค์ ๋ฐ๊ณ ๊ทธ๋๋ถํฐ UI ๊ตฌ์ฑ์ ์์ํ๊ธฐ ๋๋ฌธ์ ๋งํฌ์ ๋ง ํ๊ธฐ์๋ ์๊ฐ์ด ์ด๋ฐํ๋ค. ๊ฑฐ์ ์์ ํ๋ฉด์ ๋ฐ๋ณต๋๋ UI๋ฅผ ๊ทธ๋๊ทธ๋ ๋ฐ๋ก ์ปดํฌ๋ํธ๋ก ๋ถ๋ฆฌํ๋ค. ๋ฏธ๋ฆฌ ์ค๋ณต๋ ๊ฒ๋ค์ ์๊ฐํด๋๊ณ ์์ํ๋ค๋ฉด ์ข ๋ ํจ์จ์ ์ผ๋ก ์์ ํ์ ๊ฒ ๊ฐ๋ค.
์ด๋ฒ์ ์์
ํ๋ฉด์ ๊ฐ์ฅ ๋๋ฅผ ํ๋ค๊ฒ ํ๋ SVG... ์์์ด ์๋ ์์ ์ฝ๋๋ก ์ ๋๋ฉ์ด์
์ ๊ตฌ์ฑํ๊ณ ์ถ์๊ธฐ ๋๋ฌธ์, ๋์์ด๋ ์น๊ตฌ์๊ฒ ๋ชจ๋ ์๋ฃ๋ฅผ SVG๋ก ์ ๋ฌํด ์ค ๊ฒ์ ์์ฒญํ๋ค. (์๊ทธ๋ฌ๋)
DJ๋ธ๋๋ฒ๋์ ๋์ ๋ฐฉ์์ ๋ณด๋ฉด, ์นด๋๋ฅผ ๋ง๋ค ๋ ๋จ๊ณ์ ์ผ๋ก ์นด๋์ ์์๋ฅผ ์ถ๊ฐํ๋ ๋ฐฉ์์ผ๋ก ๋์ํ๋ค. ์ฒ์์๋ ์นด๋์ ๋ชจ์, ๊ทธ ๋ค์์ ์นด๋์ ์ฌ๋ผ๊ฐ ๋ ํฐ๋ง, ๋ฐฐ๊ฒฝ, ์์ , ํธ์ง ์์ด๋ค. ๋๋ฌธ์ ์ด ๋ชจ๋ ๊ฒ์ ๊ฐ๊ฐ์ ์ด๋ฏธ์ง๋ก ๊ด๋ฆฌํ๋ค๋ฉด ๋ง์ ์์ ์ด ํ์ํ๋ค.
์นด๋๊ฐ ์ด ์ฌ์ฏ ์ข
๋ฅ,
๋ ๊ฐ์ง ๋ ํฐ๋ง,
๋ค ๊ฐ์ง ๋ฐฐ๊ฒฝ ์์
6 x 2 x 4 ...
๊ฒฝ์ฐ์ ์๊ฐ ๋ง์์ง๋๋ฐ, ๋๋ ์ด๋ฅผ ์ต์ํ ํ๊ณ ์ถ์๋ค. ์นด๋๋ง๋ค ๋ ํฐ๋ง์ด ์ฌ๋ผ๊ฐ๋ ์์น๋ ํฌ๊ธฐ๊ฐ ๋ฌ๋ผ์ง๊ธฐ์ ์นด๋ ์ฌ์ฏ ๊ฐ๋ฅผ ๋๊ณ ๊ทธ ์์ ๋ ํฐ๋ง ์์ ์ ์ฌ๋ฆด ์๋ ์์๋ค. ์นด๋์ ์์ ์ด ๋ฐ๋๋ค๋ ๋๋์ ์ ์ ๊ฐ ๋๋ผ์ง ๋ชปํ๊ฒ ํ๊ณ ์ถ์๋ค. ์ด๊ฒ์ SVG๋ฅผ ์ฌ์ฉํจ์ผ๋ก ๊ฐ์ ํ ์ ์์๋ค.
์ด๊ฒ์ด ๋ด๊ฐ ์์ฒญํ์ฌ ๋ฐ์ ํ์ผ ์์ ์ด๋ค. ์ฐ์ธก์ ๊ฐ๋ฐ์๋๊ตฌ๋ฅผ ๋ณด๋ฉด ์ ์ ์๋ฏ์ด ์ด 4๊ฐ์ง์ ์ด๋ฏธ์ง ๊ทธ๋ํฝ์ด ํ๋์ ํ์ผ ์์ ๊ฒน์ณ์๋ ์ํ๋ก ๋ค์ด์๋ค.
svg๋ ๋ง์น iframe์ผ๋ก ํ๋ฉด์ ๊ทธ๋ ค์ฃผ๋ฏ์ด ๊ฒฝ๋ก๋ฅผ ์ถ๊ฐํ์ฌ ํด๋น ์์
์ ๋ก๋ํ๊ฒ ๋๋๋ฐ, svg ๋ด๋ถ์ style ํ๊ทธ๋ฅผ ํ์ฉํ์ฌ ์ด๋ฅผ ํธ์งํด์ค ์ ์๋ค. ์คํฌ๋ฆฝํธ ์ถ๊ฐ๋ ๊ฐ๋ฅํ๋ค. ํด๋์ค ๋ณ๋ก ๊ฐ๊ฐ์ 4๊ฐ์ ์ด๋ฏธ์ง visibility
๋ง์ ์กฐ์ ํด์ค์ผ๋ก์จ ์ด๋ฏธ์ง๊ฐ ์์ฐ์ค๋ฝ๊ฒ ๊ฐ์ ์ปจํ
์ด๋ ์์์ ์ ํ๋๋๋ก ์ค์ ํ์๋ค.
์๋์ ๊ฐ์ด ngSwitch
, ngSwitchCase
๋๋ ํฐ๋ธ๋ฅผ ์ฌ์ฉํ์ฌ ์นด๋์ ์ข
๋ฅ๋ฅผ ์ ํํ๊ณ , ๊ฐ ์ค๋ธ์ ํธ๋ ๋ด๋ถ SVG ์๋ฆฌ๋จผํธ์ ์ ์ ๊ฐ ์ ํํ ๊ฐ์ ๋ฐ๋ผ class๋ฅผ ๋ฌ๋ฆฌ ์ฃผ์ด ๋
ธ์ถํ ์นด๋์ visibility
๊ฐ ์์ ๋๋๋ก ํ๋ค.
objectLoaded(e: any) {
const svgElement = e.target?.contentDocument?.querySelector(
'svg'
) as SVGGraphicsElement;
this._svgElement = svgElement;
svgElement.classList.add(this.letteringClassName);
}
<ng-container [ngSwitch]="typeClassName">
<div class="svg-container" [ngClass]="letteringClassName">
<object
*ngSwitchCase="'bunnya'"
data="./assets/card/bunnya.svg"
height="100%"
(load)="objectLoaded($event)"
></object>
<object
*ngSwitchCase="'bunnyb'"
data="./assets/card/bunnyb.svg"
height="100%"
(load)="objectLoaded($event)"
></object>
<object
*ngSwitchCase="'bunnyc'"
data="./assets/card/bunnyc.svg"
height="100%"
(load)="objectLoaded($event)"
></object>
<object
*ngSwitchCase="'heart'"
data="./assets/card/heart.svg"
height="100%"
(load)="objectLoaded($event)"
></object>
<object
*ngSwitchCase="'cloud'"
data="./assets/card/cloud.svg"
height="100%"
(load)="objectLoaded($event)"
></object>
<object
*ngSwitchCase="'oval'"
data="./assets/card/oval.svg"
height="100%"
(load)="objectLoaded($event)"
></object>
</div>
</ng-container>
์ฌ์ค ๊ทธ๋ฅ ๊ฐ๊ฐ ์์ ์ ๋๋ฉด ๊ฐ๋จํ๊ฒ ํด๊ฒฐ๋ ๋ฌธ์ ์๊ณ , ๊ทธ๋ ๊ฒ ์ค์๋๊ฐ ๋์ ํํธ๋ ์๋์์ง๋ง, ํ๋ฒ ์์ํ๋ ๊ดํ ๋๊น์ง ๊ฐ๋ณด์ ์ถ์๋ค. ์ฝ๋๋ ์ฌํํ์ง๋ง ๊ทธ๋งํผ ๋ง์ ๊ณ ๋ฏผ์ ํ๋ ๋ถ๋ถ์ด๋ค.
์ด์ธ์๋ ์นด๋์ ๋ดํฌ๊ฐ ์ด๋ฆฌ๋ ๋ชจ์
์ญ์ svg๋ฅผ ํ์ฉํ์ฌ ์์
ํ๋ค.
๋ค์์๋ ์ข ๋ ๋ณต์กํ ๋ชจ์
์ ํด๋ณด๊ณ ์ถ๋ค.
๋ชจ์ ๋ณด๋ฌ ๊ฐ๊ธฐ
https://www.instagram.com/p/Cm1ngwbq3td/
FE๋ ๋ง๋งํ Netlify, ์๋ฒ๋ Heroku๋ฅผ ์ฌ์ฉํ์๋ค.
Heroku๋ ํ์ฌ ๋ฌด๋ฃ ํ๋์ ์๊ณ ์ต์ 7$/mo ๋ถํฐ ์์ํ๋ค.
ํผ์์ index 0 ์ด ๋ ์นด๋๋ฅผ ํ๋ ์์ฑํ๊ณ ๋์ DB์ ์ ์ ์ฅ์ด ๋์๋์ง ํ์ธ์ ํ๊ณ , ๊ณต์ ํ๊ธฐ ๊ธฐ๋ฅ๊น์ง ํ
์คํธ๋ฅผ ํ๋ค. ์ฒซ ์นด๋๋ ๊ฐ์ด ์์
ํ๋ ๋์์ด๋ ์น๊ตฌ์๊ฒ ์ ์กํ๋ค.
ํ ์คํธ๋ฅผ ๋ง์น๊ณ ๋์ ์ธ์คํ๊ทธ๋จ๊ณผ ์ฌ๋ฌ ์์ ๋ฏธ๋์ด์ ํ๋ณด๋ฅผ ํ๋ค.
12์ 30์ผ๋ถํฐ ํธ์ํฐ ์ค์๊ฐ ํธ๋ ๋์ ์ํด ์ฒซ๊ณก์ด ๋์๋๋ฐ, ์ด๋ ํธ์ํฐ ๋ด๋ง๋ฅ ํ๋ณด๋ฅผ ๊ฒ๋๊ฒ ํ๋ค. ์ฌ์ค ํธ์ํฐ๋ ๊ฑฐ์ ์ ๋ณด ์์ง์ฉ ๋ํ ๊ณ์๋๋ฐ, ๋ด ์ธ์ ๊ฐ์ฅ ๋ง์ ํธ์์ ๋ ๋ฆฐ ๋ ^^...
๋ด๋ ์๋ ํ๋ณด๋ฅผ ์ด๋ป๊ฒ ํ ์ง ์ข ๊ณ ๋ฏผํด๋ด์ผ ํ ๊ฒ ๊ฐ๋ค. ํ๋ก๋ํธ๋ ์ค์ํ๋ฐ, ํ๋ณด๋ ๋ฐฐ๋ก ๋ ์ค์ํ ๊ฒ ๊ฐ๋ค.. ์ด์ฌํ ๋ง๋ค์ด๋ ์๋ฌด๋ ์์จ์ฃผ๋ฉด ๋ฌด์จ ์๋ฏธ๊ฐ ์๊ฒ ์ด..
๋ชฝ๊ณ ๋๋น๋ UTC ๊ธฐ์ค์ผ๋ก ์๊ฐ์ ๋ณด์ฌ์ค์ ๋งคํธ๋ฆญ์ค์์ ๋
ธ์ถ๋๋ ์๊ฐ์ 9์๊ฐ์ ๋ํด์ ๋ด์ผํ๋ค.
30์ผ ์ ๋
ํธ์ํฐ ์คํธ์ ์ํด์ฒซ๊ณก์ด ์ฌ๋ผ์ค๊ณ ๋์๋ถํฐ ์ ์
์ด ํ ๋์๊ณ , 1์ 1์ผ ์นด์ดํธ๋ค์ด ์ง์ ์ ๊ฐ์ฅ ๋ง์ ์ฌ๋๋ค์ด ๋ค์ด์๋ค.
DB์ ์ฌ์ด์ฆ ๋ณํ๋ฅผ ๋ณด์ฌ์ฃผ๋ ํ. 1์ 1์ผ ์ดํ์๋ 200 ์ฌ๊ฐ์ ์นด๋๊ฐ ์์ฑ๋์๋ค.
ํ๋ก ํธ์๋๋ง ํ๋ค๊ฐ ์ด๋ฐ ๋ฐ์ดํฐ ๋ณด๋๊น ๋๋ฌด ์ฌ๋ฐ์๋ค. ์ง๋ฆฟํด ๋ ์๋ก์.
๋๊ฐ ๋ฐฐํฌํ๋ฉด ๋์ด๋.. ๋ฐฐํฌํ์๋ง์ ๊ฐค๋ญ์ ์ฐ๋ ์๋ง๊ฐ ๋ ธ๋ ์ฌ์์ด ์๋๋ค๋ฉฐ ๋ฒ๊ทธ ์ ๋ณด๋ฅผ ํด์ฃผ์๋ค. ์ฑ๋ฑ์ด์ธ ๋๋ ์๋ ํฐ ํ ์คํธ๋ ๋ถ๊ฐ๋ฅํด์ ๊ทธ๋ฅ ๊ตฌ๊ธ๋งํด์ ์์ ํด๋ณด๊ณ ๋ฐฐํฌํ๊ณ ๋ฌผ์ด๋ณด๊ณ ์ ๋ฐ๋ณต์ด์๋ค. ๋ค์ ํ๋ก์ ํธ๋๋ ๋ฐ๋์..! ์๋๋ก์ด๋ ๊ณต๊ธฐ๊ณ๋ฅผ ๊ตฌ๋นํด์ผ๊ฒ ๋ค๊ณ ๋ค์งํ๋ค.
๋ฒ๊ทธ fix ๋ฟ๋ง ์๋๋ผ ๋๋ ํ ์คํธ๋ฅผ ํด๋ณด๋ฉด์ ๋ถํธํ๋ค๊ณ ๋๋ผ๋ ๊ฒ๋ค์ patch ํ๋ค. ์นด๋๊ฐ ์ ์ฅ๋ ๋ ๋ก๋ฉํ์ด์ง๋ฅผ ์ถ๊ฐํ๊ฑฐ๋, UX writing์ ์์ ํ๊ธฐ๋ ํ๋๋ฐ, ๋ํ์ ์ธ ๊ฒ์ด ์นด๋๋ฅผ ์ ์ฅํ ๋ ๋ ธ์ถ๋๋ ์ผ๋ฟ์ ๋ฌธ๊ตฌ์๋ค.
๋ช๋ช ์น๊ตฌ๋ค์ด ๋๋ธ ๋ด๊ฒ "์นด๋ ๋ฐ์์ด?" ํ๊ณ ๋ฌผ์ด๋ณด๋ ๊ฒ์ด์๋ค.
์๋, ๋ค๊ฐ ๋งํฌ๋ฅผ ์๋ณด๋๋๋ฐ ๋ด๊ฐ ์ด๋ป๊ฒ ๋ณด๋๊ตฌ!!!!!!
๋ด๊ฐ ๋ง๋ ์ฑ์ ํ๋ก์ฐ๋ ๋ค์๊ณผ ๊ฐ์๋ค.
์นด๋๋ฅผ ๋ง๋ ๋ค โ ์นด๋๋ฅผ ์์ฑํ์ฌ ๋ฏธ๋ฆฌ๋ณด๊ธฐ ํ๋ค โ ์ ์ฅํ๋ค โ ์นด๋ id path๋ก ์ด๋ํ๋ค
โ ๊ณต์ ๋ฒํผ์ ๋๋ฅธ๋ค โ ์น๊ตฌ์๊ฒ ๋งํฌ ๋๋ ์นด์นด์คํก์ผ๋ก ๊ณต์ ํ๋ค.
๊ทธ๋ฐ๋ฐ, ์์ [์ ์ฅํ๋ค]
๋จ๊ณ์์ POST ์์ฒญ ์ฑ๊ณต ์ ํ์
์ผ๋ก "์ ์ฅ์ ์ฑ๊ณตํ์ด์!" ์ผ๋ฟ์ ๋์์ฃผ๋๋ฐ, ์๊พธ ์น๊ตฌ๋ค์ด ๋ฌธ๊ตฌ๋ง ๋ณด๊ณ ํ๋ฉด์ ๋ซ์๋ฒ๋ฆฌ๋ ๊ฒ์ด๋ค. id๋ฅผ ๋ชจ๋ฅด๋ฉด ํ์ ๊ทธ ์นด๋๋ฅผ ์ฐพ์ ์ ์๋ค๊ตฌ ์น๊ตฌ์ผ.. ๊ทธ๋์ ์ฌ๋ฌ ๋ฒ DB๋ฅผ ๋ค์ ธ ์นด๋ ๋งํฌ๋ฅผ ์ฐพ์ ์น๊ตฌ์๊ฒ ์๋ ค์ฃผ๊ณค ํ๋ค.
์์ธ์ด ๋ญ๊น ๊ณ ๋ฏผ์ ํด๋ณด์๋๋ฐ, "์ ์ฅ์ ์ฑ๊ณตํ์ด์!"์ ๋ฌธ๊ตฌ๊ฐ ๋ฌธ์ ๋ผ๋ ์๊ฐ์ ํ๋ค. ์นด๋๋ฅผ ์ ์ฅ์ ํ์ง๋ง, ์์ง ๋ชจ๋ ๊ณผ์ ์ด ๋๋ ๊ฒ์ ์๋๋ฐ ์ฑ๊ณต์ด๋ผ๋ ๋จ์ด๊ฐ ๋ชจ๋ ๊ณผ์ ์ด ๋๋ฌ๋ค๋ ๋๋์ ์ค๋ค. ๊ทธ๋์ ๋ฌธ๊ตฌ๋ฅผ ๋ค์๊ณผ ๊ฐ์ด ์์ ํ๋ค.
์ฑ๊ณต์ด๋ผ๋ ๋จ์ด๋ฅผ ์ ์ฅ์ด๋ผ๊ณ ์์ ํ๊ณ , ์๋์ ํ์ธ์ ํ๊ณ ๊ณต์ ๋ฅผ ํ๋ฌ ๊ฐ์๋ ๋ด์ฉ์ ๋ง๋ถ์ฌ ๋ชจ๋ ๊ณผ์ ์ด ์์ง ๋๋์ง ์์๊ณ , ๋ค์ ํ์ด์ง์์ ๊ณต์ ํ ์ ์๋ค๋ ๋ฉ์ธ์ง๋ฅผ ๋์ก๋ค. ์ด๋ ๊ฒ ๋ฌธ๊ตฌ๋ง ์์ ํ๋ ์์ ๊ฐ์ด ์ค์ํ๋ ์ผ์ด์ค๊ฐ ๊ฑฐ์ ์ฌ๋ผ์ก๋ค. UX ๋ผ์ดํ ์ ์ค์์ฑ์ ๋ํด ๋ค์๊ธ ๊นจ๋ฌ์๋ค.
๊ทธ๋ฆฌ๊ณ ์ ๋ง ํฐ ์ค์ ํ๊ฐ์ง...
12์ 31์ผ ์ํด๋ง์ด๋ฅผ ๊ธฐ๋ค๋ฆฌ๋ฉฐ ๋ก๊ทธ๋ฅผ ํ์ธํ๊ณ ์์๋๋ฐ, ํ์ฌ์๊ฐ์ด ๋ฐ๋์ง ์๋ ๊ฒ์ ํ์ธํ๋ค. ์ค์๊ฐ์ผ๋ก ๋ก๊ทธ๋ ์ฐํ๋๋ฐ ๊ณ์ 21์ 52๋ถ 51์ด ... ์์ ๋์ด ๋ฌ๋ค.. ์ด๊ฒ ๋ญ์ง?
์๊ณ ๋ณด๋, node.js์์ ํจ์ ๋ฐ์์ ํ์ฌ ๋ก์ปฌ ์๊ฐ์ ํ ๋นํ๊ณ ์ด๋ฅผ 2023-01-01 ... ์ํด์ ๋น๊ต๋ฅผ ํ๊ณ ์์๋ ๊ฒ์ด๋ค. ํจ์ ๋ฐ์์ ๋ก์ปฌ ์๊ฐ์ ํ ๋นํ๊ณ ์์ผ๋, ๋ก์ปฌ ์๊ฐ์ ๋ฑ ํ๋ฒ, ์๋ฒ๊ฐ ๋น๋๋๊ณ ๋ฐฐํฌ๋๋ ๊ทธ ์์ ์ ๋จธ๋ฌผ๋ฌ ์์๋ ๊ฒ์ด์๋ค. ์์ ๋งํ๋ฏ์ด ์ํด๊ฐ ๋๊ธฐ ์ ์๋ ์๋ฒ์์ ์นด๋ ๋ด์ฉ์ ๋ด๋ ค์ฃผ์ง ์๊ณ ์๋๋ฐ, ์ด๋๋ก๋ฉด ์ํด๊ฐ ๋์ด๋ ์์ง ์ํด๊ฐ ๋์ง ์์๋ค๋ ๋ฌธ๊ตฌ๊ฐ ๋ ธ์ถ๋ ์ผ์ด์๋ค.
์ํด ์ง์ ์ด์๊ธฐ์ ๋ง์ ์ ์
์ด ์์์ง๋ง ๋๋ฌผ์ ๋จธ๊ธ๊ณ ์ด๋ฅผ ์์ , ๋ฐฐํฌํ ์ ๋ฐ์ ์์๋ค.
์ด๋ฐ ๋ฐ๋ณด๊ฐ์ ์ค์๋ฅผ ํ๋ค๋ ์๊ดด๊ฐ์ด ๋ฐ๋ ค์์ง๋ง, ํ๋ก ํธ ๊ฐ๋ฐํ๋๋ผ ์ด๋ฐ์ ๋ง๋ ์๋ฒ๋ฅผ ๋๋ธ ์ฒดํฌํ์ง ๋ชปํ ๋ด ์๋ชป์ด์๋ค. ๊ทธ๋๋ ์ํด ๋๊ธฐ ํ์๊ฐ๋ฐ ์ ์ ์ฐพ์์ผ๋ ์ผ๋ง๋ ๋คํ์ธ์ง. ํ์ฌ ์๊ฐ ์ฝ์๋ก๊ทธ๋ก ์ฐ์ ๋ ์นญ์ฐฌํด..
์ฝ์ด์๋ฐ์คํฌ๋ฆฝํธ ๋ค์ ๋ฐฐ์ฐ์ ^^;
์ฒ์ ํ๋ก์ ํธ๋ฅผ ๊ธฐํํ ๋, ๋์ ๋ชฉํ๋ 500๊ฐ์ ์นด๋ ์์ฑ์ด์๋ค. ์ ์ด๋ ๋ด ์ธ์คํ๊ทธ๋จ ์น๊ตฌ๋ค ์ ๋๋ ํด์ฃผ์ง ์์๊น ์ถ์๋ค. ํ์ง๋ง ํ์ฌ ์๊ฐ ๊ธฐ์ค ์ด 1,916๋ช ์ด ์ฐ๋ฆฌ์ ์๋น์ค๋ฅผ ํตํด ์นด๋๋ฅผ ๋ง๋ค๊ณ ์ง์ธ์๊ฒ ๊ณต์ ํ๋ค. (๋ชฉํ 3๋ฐฐ ์ด์ ๋ฌ์ฑ!) ๋ง์ ์ฌ๋๋ค์ด ๋ค๋ฅธ ๋๊ตฐ๊ฐ์ ์ํด๋ฅผ ์์ํด์ฃผ๊ณ ํ์ด ๋ ๋ ธ๋๋ฅผ ๊ณจ๋ผ ์ฃผ๊ณ ๋ฐ๋๊ฑธ ์๋ฒ๋ก๊ทธ๋ก ๋ณด์๊ณ , ๊ทธ ๋ชจ๋ ์นด๋๋ฅผ ๋ด๊ฐ ๋ฐ์ ์ ๊ฐ๋ ๋ฐ๋ ์๊ฐ์ด์๋ค.
์ฒ์ ํ๋ก์ ํธ ์์ด๋์ด๋ฅผ ๋ ์ฌ๋ฆฐ ๊ฒ์ด 12์ 8์ผ, ์ ๋ชจ๋ ๊ณผ์ ์ 3์ฃผ ์์ ํด๋ด์ผ ํ๋ค. ์ฃผ์ค์๋ ํ์ฌ ์ผ๋ก ์๊ฐ์ ๊ฑฐ์ ๋ด์ง ๋ชปํ๊ณ ๋งํ์ ๋ฐฐํฌ ์ 3-4์ผ์ ๋งค์ผ ์๋ฒฝ ๋ค์ฏ์๊น์ง ์์ ํ๊ณ ์ชฝ์ ์ ์๋ฉฐ ๋ฌ๋ ธ๋ค. ๋งค์ผ ๊ฐ๋ ์ด๋๋ ๊ฐ์ง ๋ชปํ๊ณ ์ฌ๋ฌ๋ชจ๋ก ์ฌ๋๊ผด์ด ๋ง์ด ์๋์๋ค. ใ ใ ใ
์๋ฒ, DB๋ฅผ ๋ค๋ค๋ณด๋ฉด์ ๋ด ๊ฒฝํ์น๋ฅผ ํค์ ๋ค๋๊ฒ ์๋ฏธ๊ฐ ์๋ ๊ฒ ๊ฐ๋ค. ์ด๋ ค์ด ๊ธฐ์ ์ ์ฌ์ฉํ ๊ฒ์ ์๋์ง๋ง ๋ด๊ฐ ๊ธฐํ๋ถํฐ ๋์์ธ, ๊ฐ๋ฐ, ํ๋ณด...๊น์ง ํ๋ฉฐ ํ๋์ ์๋น์ค๋ฅผ A-Z ์จ์ ํ ์ฑ ์์ง๋ ๊ฒฝํ์ด์๋ค. ์ค์ ์ ์ ๋ค์ด ์ฌ์ฉํ๋ ๊ฒ๋ ๋ณด๊ณ ์ง์ ์ ์ธ ๋ฐ์๊ณผ ํผ๋๋ฐฑ์ ์ป์ผ๋ ์ง๋ฆฟํ๋ค. ์ฒซ ํ์ฌ์ ์ ์ฌํ๊ณ ์ฒซ ๋ฐฐํฌ๋ฅผ ํ์ ๋ ๋ง์น ์ค๋ ๊ธฐ๊ฐ ์ฐ์ต์ ์ํ์ ๋ง์น๊ณ ๋ฌด๋์ ์๋ ์์ด๋์ด ๋ ๊ฒ ๊ฐ์ ๋๋์ ๋ฐ์๋๋ฐ, ๊ทธ ๊ธฐ๋ถ์ด ๋๊ฒ ์ค๋๋ง์ ๋๊ปด์ก๋ค.
์ฐ์ด์๋ DJBB ํ๋ก์ ํธ๋ฅผ ๋ฆฌํฉํ ๋ง ํด๋ณผ ์๊ฐ์ด๋ค. ๋ฐ์ ์ผ์ ์ ์ง์ ๋ถํ ์ฝ๋๋ ์ธ๋ฉดํ๋ฉฐ ๋ฌ๋ ธ๋ค! 21์ผ ์๋น์ค ์ข ๋ฃ ํ ํ๋์ฉ ๋ฏ์ด ๊ฐ์ ํด๋ณด๊ณ ์ถ๋ค. ์์ผ๋ก๋ ํํ์ด ๋ด๊ฐ ํด๋ณด๊ณ ์ถ์๋ ๊ฒ์ ๋ง๋ค์ด๋ณด๋ ค ํ๋ค. ๋์์ธ์๋ ๋ ์์ฌ์ด ๋๊ณ , ์ ์ ๋ค์ด ์ฌ๋ฏธ์๊ฒ ๊ฐ๊ณ ๋ ์ ์๋ ์ฅ๋๊ฐ์ ๋ง๋ค์ด๋ณด๊ณ ์ถ๋ค.
๋์์ด๋๋ก ์ฐธ์ฌํ ์น๊ตฌ๋ ์ด๋ฒ ํ๋ก์ ํธ๊ฐ ๋ง์กฑ์ค๋ฌ์ ๋์ง ๋ฒ์จ 2024 ํธ๋ฅธ ์ฉ ๐ ์ ํด๋ฅผ ์ค๋นํ์๊ณ ์ด์ผ๊ธฐ๋ฅผ ํ๊ณ ์๋ค! 2024 ์ ๋ ํ๋ก์ ํธ๋ 10์๋ถํฐ ๊ธด ํธํก์ผ๋ก ์ค๋นํด์ ๋ ๋ฉ์ง ๋์์ธ๊ณผ ๊ฐ์ ๋ ์ฌ์ฉ์ฑ์ผ๋ก ๋ ๋ง์ ์ฌ๋๋ค์ ์ด์ผ๊ธฐ๋ฅผ ๋ด๊ณ ์ถ๋ค.
ํ ์ดํ๋ก์ ํธ? ๊ทธ๊ฑฐ ๋ณ๊ฑฐ ์๋! ๊ฑ ํผ์ํด๋ ๋จ! ใ ใ
๊ฐ๋ฐ์ ๋์์ด ๋์๋ ๋งํฌ๋ค
https://velog.io/@hyounglee/DJBB-links
๋ง๋ ์ฌ๋๋ค
์น๊ฐ๋ฐ + UXUI ์ค๊ณ ๋ฐ ๋์์ธ : @playthings.kr
๋ ํฐ๋ง + ๊ทธ๋ํฝ๋์์ธ : @pot_works
FE Github README updated!
Server Github README updated!
์๋
ํ์ธ์ ์ฐ์ฐํ ๊ธ ์ฝ์๋๋ฐ, ๋๋ฌด ๋๋จํ์๋ค์...!
์ ๋ ๋ญ๊ฐ ๋ง๋ค์ด๋ณด๊ณ ์ถ๋ค๋ ์๊ฐ์ด ๋ง ๋๋ค์ ใ
ใ
์์ด๋์ด๋ถํฐ ํ๋ก์ ํธ ์์ฑ, ๊ณต์ , ๋ฒ๊ทธํฝ์ค์ ๋ชฉํ์น 3๋ฐฐ ๋ฌ์ฑ๊น์ง ...
์ฒ์๋ถํฐ ๋๊น์ง ๋์ ๋ผ์ง ๋ชปํ๊ณ ์ฝ์์ด์ ์ ๋ง ๋๋จํ์ญ๋๋ค ! :)
๋๋ฌด ๊ท์ฌ์์ ์ ๋ดค์ต๋๋ค! 2024๋ ๋ ๊ธฐ๋๋๋ค์ ๊ทธ๋๋ ๊ผญ ์ด ์๋น์ค๋ก ์นด๋ ๋ณด๋ด๋ณด๊ณ ์ถ์ด์ ใ ใ
๋ฐ๊ฐ์ด ์ด๋ฆ์ด ๋ฉ์ผ๋ฆฌ์คํธ์ ๋ด๊ธธ๋ ๋ณด์๋๋ ๋ฟ๋ฏํ ํ์ ํ๋ ๋ฐ์นญ ํ์ จ๊ตฐ์! ๋ฉ์ง๋๋ค์. ๐ ์ด์ ์๋ฒ๋ง์ ๋ณด์ จ์ผ๋ ํ์คํ์ ๊ธธ๋ก...! ใ ใ ใ
์ฐ์ ์ต๊ทค๋ฌ๋ก ๊ฐ๋ฐํ์ จ๋๋ ใ ใ ์ ๋ ์ต๊ทค๋ฌ ์ฐธ ์ข์ํ๊ณ ์ค๋ฌด์์๋ ์ฐ๊ณ ์๋๋ฐ ์์ฆ ์ฌ์ฉํ๊ณ ์๋ ๋ถ์ ๋ง๋๋ค๋ ๋๊ฒ ๋ฐ๊ฐ๋ค์ ใ ใ ! ์น์ฌ์ดํธ๋ ์ ๋ง ์์๊ณ ์์ด๋์ด๋ ์ข์๊ฒ ๊ฐ์์ :) ๊ธ ์๋ณด๊ณ ๊ฐ๋๋ค!
๐๐๐๐