JavaNyang ์จ๋ผ์ธ ํด์ฆ ํ๋ซํผ - ์ธ์ ์ด๋์๋ ํธ๋ฆฌํ๊ฒ, 1:1 ์ค์๊ฐ ํด์ฆ ๋ฐฐํ!
๊ฐ๋ฐ๊ธฐ๊ฐ: 2025.05 ~ 2025.07
์๋น์ค ๋งํฌ : hyunsuplee.github.io/JavaNyang/
PPT ๋งํฌ : JavaNyang PPT
์์ฐ ์์ : youtu.be/uUBhM42BH-0
$ git clone [repository-url]
$ cd javanyang-project$ npm install
$ npm startJavaNyang์ ์๋ฐ ํ๋ก๊ทธ๋๋ฐ ํ์ต์ ์ํ ์จ๋ผ์ธ ํด์ฆ ํ๋ซํผ์ ๋๋ค. ๊ธฐ์ด ๋ฌธ๋ฒ๋ถํฐ ๊ณ ๊ธ ๊ฐ๋ ๊น์ง ๋จ๊ณ๋ณ ํ์ต ์์คํ ์ ๊ตฌ์ฑํ์ฌ, ์ธ์ ์ด๋์๋ ๋ฐ์คํฌํ ๋๋ ๋ชจ๋ฐ์ผ๋ก ํธ๋ฆฌํ๊ฒ ํ์ตํ ์ ์์ต๋๋ค. 1:1 ์ค์๊ฐ ํด์ฆ ๋ฐฐํ์ ํตํด ๋ชฐ์ ๋์ ํ์ต ๋๊ธฐ๋ฅผ ๋ถ์ฌํ๊ณ , ๊ถ๊ธํ ์ ์ ๋ฐ๋ก๋ฐ๋ก ์ฑํ ์ผ๋ก ์ํตํ ์ ์๋ ํ๋ฐํ ์ปค๋ฎค๋ํฐ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
- ํผ์ ํ์ตํ๋ ๊ตฌ์กฐ์ ํ๊ณ: ๊ธฐ์กด ํ์ต์๋น์ค๋ ๋ํ๋ก ํ์ตํ๋ ๊ตฌ์กฐ๋ก ๋๊ธฐ๋ถ์ฌ๊ฐ ๋ฎ์
- ์ํต ์๋ ํ์ด ํ๊ฒฝ: ์ค์๊ฐ์ผ๋ก ์๊ฒฌ์ ๋๋ ์ ์๋ ์ปค๋ฎค๋์ผ์ด์ ๊ธฐ๋ฅ ๋ถ์กฑ
- ์ค์๊ฐ ๋์ ์ ํ์์ฑ: ๊ฒฝ์์ ํตํด ๋ชฐ์ ๊ฐ ์๊ฒ ํ์ตํ๋ ํ๊ฒฝ
- ์ฌ์ฉ์ ์ฐธ์ฌํ ์ฝํ ์ธ ๋ถ์กฑ: ์ฌ์ฉ์๊ฐ ์ง์ ๋ฌธ์ ๋ฅผ ๋ง๋ค ์ ์๋ ๊ธฐ๋ฅ์ด ํ์ํ๋ค๊ณ ํ๋จ
- ์จ๋ผ์ธ ์๋ฐ ํด์ฆ ํ์ต ํ๊ฒฝ ๊ตฌ์ถ - ๊ธฐ์ด๋ถํฐ ์ฌํ๊น์ง ๋จ๊ณ๋ณ๋ก ํ์ต ์์คํ ์ ๊ณต
- ์ฌ์ฉ์ ๊ฐ ์ค์๊ฐ ํด์ฆ ๋์ ๊ธฐ๋ฅ ๊ตฌํ - ๋ชฐ์ ๋๋ฅผ ๋์ผ 1:1 ์ค์๊ฐ ํด์ฆ ๋์
- ๋ญํน ๋ฐ ์ ์ ๊ธฐ๋ฐ์ ๋๊ธฐ ๋ถ์ฌ ์์คํ ๊ฐ๋ฐ - ํ์ต ์ฑ๊ณผ๋ฅผ ์๊ฐํํ๊ณ ๊ฒฝ์ ์์๋ฅผ ๋ํด ์ง์์ ์ธ ํ์ต ์ ๋
- ๊ฐ์ธ ํด์ฆ ๋ฐ์ดํฐ ๊ธฐ๋ฐ ์๊ธฐ ์ฃผ๋ ํ์ต ์ง์ - ๋์ ํ์ต ๊ธฐ๋ก์ ํตํด ๋ถ์กฑํ ์์ญ์ ์ค์ค๋ก ์ ๊ฒ ๊ฐ๋ฅํ๋๋ก ์ค๊ณ
- ํด์ฆ ์ค์ฌ ์ค์๊ฐ ํ์ต: ์ ์ ์ธ ๋ฌธ์ ์์ฃผ์ W3Schools์ ๋ฌ๋ฆฌ, ์ค์๊ฐ ํด์ฆ๋ฅผ ํตํด ์ฆ๊ฐ์ ์ธ ํผ๋๋ฐฑ๊ณผ ๋ชฐ์ ๋ ๋์ ํ์ต ์ ๊ณต
- 1:1 ํด์ฆ ๋์ ๊ฐ๋ฅ: ๋จ์ํ ์์ ํ์ต์ ๋์ด์, ์ฌ์ฉ์ ๊ฐ ์ค์๊ฐ ๋๊ฒฐ์ ํตํด ๊ฒฝ์ ๋ฐ ์ค๋ฆด์๋ ํ์ต
- ์ ์ ยท๋ญํน ์์คํ ํ์ฌ: ํ์ต ์ฑ์ทจ๋ฅผ ๊ฐ์ํํ๋ ์ ์ ๊ณผ ์์ ์์คํ ์ผ๋ก ์ง์์ ์ธ ๋๊ธฐ ๋ถ์ฌ ์ ๊ณต
- ๊ฐ์ธ ๋ง์ถคํ ๊ธฐ๋ก ๋ถ์: ์ฌ์ฉ์๋ณ ํด์ฆ ์ ์ถยท์ ๋ต๋ฅ ๋ฑ ๋ฐ์ดํฐ ๊ธฐ๋ฐ ๋ถ์์ผ๋ก ๋ถ์กฑํ ์์ญ์ ์ง๋จํ์ฌ ์ฌํ์ต ๊ฐ๋ฅ
- ์ฃผ์ (๋ณ์, ์ ์ด๋ฌธ ๋ฑ)์ ๋์ด๋(์ด๊ธ/์ค๊ธ/๊ณ ๊ธ)๋ณ ํด์ฆ ์ ํ
- ์ฒด๊ณ์ ์ธ ๋จ๊ณ๋ณ ํ์ต ์์คํ
- ์ฌ์ฉ์ ๊ฐ ์ค์๊ฐ 1:1 ํด์ฆ ๋์
- ์ฑํ ์ ํตํ ์ฌ๋ฏธ์ ๋ชฐ์ ๋ ๋์ ๊ฒฝ์ ํ์ต
- ์ ์ , ๋ญํน, ์ ๋ต๋ฅ ๋ถ์์ ํตํ ์ฑ์ทจ๊ฐ ์๊ทน
- ๊พธ์คํ ํ์ต์ ์ ๋ํ๋ ๋๊ธฐ ๋ถ์ฌ ์์คํ
- ์ง์ ํด์ฆ๋ฅผ ๋ง๋ค๊ณ ๊ณต์ ํ ์ ์๋ ๊ธฐ๋ฅ
- ํ์ต์ ์ค์ฌ์ ์ปค๋ฎค๋ํฐ ๊ธฐ๋ฐ ์ฝํ ์ธ ํ์ฑํ
-
2025.05.07 - 2025.05.21: ํ๋ก์ ํธ ๊ธฐํ & UI ์ค๊ณ
- ํ๋ก์ ํธ ์ฃผ์ ์ ์ ๋ฐ ์ปจ์ ์ ์
- ํผ๊ทธ๋ง๋ฅผ ํ์ฉํ UI/UX ํ๋ฉด ์ค๊ณ
- ํต์ฌ๊ธฐ๋ฅ ๊ธฐํ ๋ฐ ์๊ตฌ์ฌํญ ์ ์
- ์ฌ์ฉ์ ํ๋ก์ฐ ๋ฐ ์์คํ ๊ตฌ์กฐ ์ค๊ณ
-
2025.05.21 - 2025.06.19: ๊ฐ๋ฐ & ๊ตฌํ
- Supabase ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ตฌ์ถ
- ํ ์ด๋ธ ์์ฑ ๋ฐ ๊ด๊ณ ์ค์
- ์ค์๊ฐ ๊ธฐ๋ฅ์ ์ํ RLS ์ ์ฑ ์ค์
- React ์ปดํฌ๋ํธ ๊ฐ๋ฐ
-
2025.06.19 - 2025.07.10: ๋ง๋ฌด๋ฆฌ & ๋ฐํ ์ค๋น
- ์ต์ข ๊ธฐ๋ฅ ๊ตฌํ ๋ฐ ํตํฉ ํ ์คํธ
- ๋ฒ๊ทธ ์์ ๋ฐ ์ฑ๋ฅ ์ต์ ํ
- ๋ฐํ ์๋ฃ ์ ์ ๋ฐ ๋ฐํ ์ค๋น
- ํ๋ก ํธ์๋ - React + Vite: ๋น ๋ฅธ ๊ฐ๋ฐ๊ณผ ํซ ๋ฆฌ๋ก๋ฉ์ ์ง์ํ๋ Vite ๊ธฐ๋ฐ์ React SPA ๊ตฌ์กฐ๋ก ์ฌ์ฉ์ ์ธํฐํ์ด์ค ๊ตฌ์ฑ
- ๋ฐฑ์๋ ์๋น์ค - Supabase: ์ธ์ฆ, ์ค์๊ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค, ์คํ ๋ฆฌ์ง, ์๋ฒ๋ฆฌ์ค ํจ์๊น์ง ํตํฉ ์ ๊ณตํ๋ BaaS ํ๋ซํผ ํ์ฉ
- ์ค์๊ฐ ๊ธฐ๋ฅ - Supabase Realtime: ์น์์ผ ๊ธฐ๋ฐ ์ค์๊ฐ ํด์ฆ ๋์ ๋ฐ ์ฑํ ๊ธฐ๋ฅ์ผ๋ก ์ฌ์ฉ์ ๊ฐ ์ํธ์์ฉ ๊ตฌํ
- ๋ฐ์ดํฐ ๊ด๋ฆฌ ๋ฐ ๋ถ์ - ํด์ฆ ํต๊ณ ์์คํ : ํด์ฆ๋ณ ์ ๋ต๋ฅ , ์ ์ถ ์, ์ ์ ๊ธฐ๋ก ๋ฑ์ ์์ง ๋ฐ ์๊ฐํํด ๋ง์ถคํ ํ์ต ํผ๋๋ฐฑ ์ ๊ณต
- Mobile & Tablet: ๋ด ์์์ ์๋ฐ ํ์ต์ค - "์ธ์ ์ด๋์๋, 5๋ถ์ด๋ฉด ์ถฉ๋ถํฉ๋๋ค." ๋ฐ์ ์ผ์ ์์์๋ ํ ์์ผ๋ก ์ฆ๊ธฐ๋ ์ค์๊ฐ ํด์ฆ ๋์ !
- Desktop: ๋ชฐ์ ๊ฐ ์๋ ํ์คํฌ๋ฆฐ ํ์ต ๊ฒฝํ - "๋ ๋๊ฒ, ๋ ๊น์ด ๋ฐฐ์ฐ๋ค." ๋๋ํ ํ๋ฉด๊ณผ ์ ๊ตํ ์กฐ์์ผ๋ก ํด์ฆ, ํต๊ณ, ๋์ ๊น์ง ํ๋์!
project/
โโโ public/
โ โโโ index.html # HTML ํ
ํ๋ฆฟ ํ์ผ
โ โโโ favicon.ico # ์์ด์ฝ ํ์ผ
โโโ src/
โ โโโ assets/ # ์ด๋ฏธ์ง, ํฐํธ ๋ฑ ์ ์ ํ์ผ
โ โโโ components/ # ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ UI ์ปดํฌ๋ํธ
โ โโโ hooks/ # ์ปค์คํ
ํ
๋ชจ์
โ โโโ pages/ # ๊ฐ ํ์ด์ง๋ณ ์ปดํฌ๋ํธ
โ โโโ App.js # ๋ฉ์ธ ์ ํ๋ฆฌ์ผ์ด์
์ปดํฌ๋ํธ
โ โโโ index.js # ์ํธ๋ฆฌ ํฌ์ธํธ ํ์ผ
โ โโโ index.css # ์ ์ญ css ํ์ผ
โ โโโ supabaseConfig.js # supabase ์ธ์คํด์ค ์ด๊ธฐํ ํ์ผ
โโโ package-lock.json # ์ ํํ ์ข
์์ฑ ๋ฒ์ ์ด ๊ธฐ๋ก๋ ํ์ผ
โโโ package.json # ํ๋ก์ ํธ ์ข
์์ฑ ๋ฐ ์คํฌ๋ฆฝํธ ์ ์
โโโ .gitignore # Git ๋ฌด์ ํ์ผ ๋ชฉ๋ก
โโโ README.md # ํ๋ก์ ํธ ๊ฐ์ ๋ฐ ์ฌ์ฉ๋ฒ
ํด์ฆ์ ๋์ ์ ํตํ ์ฐธ์ฌํ ํ์ต์ผ๋ก, ์๋์ ์ธ ์ด๋ก ์๊ธฐ์์ ๋ฒ์ด๋ ์ค์ ๊ฐ๊ฐ ํฅ์
์ ๋ต๋ฅ , ์ ์ถ ์ด๋ ฅ ๋ฑ ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ์ฉ์๋ณ ์ฝ์ ์ ๋ณด์ํ๋ ๋ง์ถค ์ ๋ต ๊ฐ๋ฅ
์ค์๊ฐ ๋์ ๊ณผ ๋ญํน ์์คํ ์ ํ์ฉํ ๊ต๋ด or ์คํฐ๋ ๊ทธ๋ฃน ํด์ฆ ๋ํ ๋ฑ ๋ค์ํ ๊ต์ก ํ๋์ ์ ๋ชฉ
์ ์ ยท๊ธฐ๋กยทํผ๋๋ฐฑ์ ํตํด ์ค์ค๋ก ํ์ต ๋ชฉํ๋ฅผ ์ค์ ํ๊ณ ๋ฐ๋ณต ํ๋ จํ๋๋ก ์ ๋