๋ํ์ ์ฝ๋ฉ ์ฐํฉ ๋์๋ฆฌ ๋ฉ์์ด ์ฌ์์ฒ๋ผ ์คํฐ๋์์ ์งํํ ํ๋ก์ ํธ๋ก, E-commerceํํ์ ์น ์๋น์ค๋ฅผ ๊ตฌํํด๋ณด๋ ์คํฐ๋๊ฐ ์งํ๋์ด ์์ํ๊ฒ ๋ ํ๋ก์ ํธ์ ๋๋ค.
โจ ์๋ ๋งํฌ์์ ํ๋ก์ ํธ ๋ฐ๋ชจ ํ์ธ์ด ๊ฐ๋ฅํฉ๋๋ค.
MOMO Demo
- HTML5 / CSS3
- JavaScript(ES6+)
- React
- Redux, Redux-thunk
- MongoDB, Mongoose
- Node.js
- Express
- SCSS(BEM ํ์ฉ)
- Gsap
- ํ์๊ฐ์ /๋ก๊ทธ์ธ/๋ก๊ทธ์์
- ํ๋ก๋ํธ ํ์ด์ง๋ค์ด์
- ์ํ ๊ฒ์
- ์นดํ ๊ณ ๋ฆฌ ๊ฒ์
- ์ ํ ์์ธ ํ์ด์ง
- ์ํ ๋ฆฌ๋ทฐ
- ์ฃผ๋ฌธํ์ธ์ฉ ์ฌ์ฉ์ ๋ง์ด ํ์ด์ง , ํ๋กํ
- ์ฃผ๋ฌธ Checkout ํ๋ก์ธ์ค (shipping -> payment method -> order)
- ์ฅ๋ฐ๊ตฌ๋
- ํ์ดํ/์ ์ฉ์นด๋ ๊ฒฐ์ ๊ธฐ๋ฅ
- Admin ์ ์ , ์ ํ, ์ฃผ๋ฌธ ๊ด๋ฆฌ ํ์ด์ง
- ๋ฐ์ํ ์น
GSAP์ ์ด์ฉํ ์คํฌ๋กค ์ ๋๋ฉ์ด์
, Landing page ๋ด์์ view๋ฅผ ๋๋ฅด๋ฉด ํ๋ก๋ํธ ํ์ด์ง(/shop)์ผ๋ก ์ด๋ํฉ๋๋ค.
์นดํ
๊ณ ๋ฆฌ๋ณ๋ก ์ํ ๊ฒ์์ ํ ์ ์๋ ์นดํ
๊ณ ๋ฆฌ ํํฐ ๊ธฐ๋ฅ๊ณผ ํ์ด์ง๋ค์ด์
๊ตฌํ
๋ก๊ทธ์ธ์ ํ๋ฉด ๋๋ฉํ์ด์ง('/')๋ก ์ด๋ํ๊ณ ๋ก๊ทธ์์์ ํ๋ฉด '/login'ํ์ด์ง๋ก ๋ฆฌ๋ค์ด๋ ํธ ๋ฉ๋๋ค.
jwt๋ฅผ ์ด์ฉํ์ฌ ํ ํฐ์ ์์ฑํ๊ณ ๋น์์ฃผ๊ณ (๋ก๊ทธ์์), authMiddleware๋ฅผ ํตํด ํ ํฐ์ ๋น๊ตํ๋ ๋ฐฉ์์ผ๋ก
๋ก๊ทธ์ธ authorization์ ๊ตฌํํ์์ผ๋ฉฐ, user๊ฐ admin์ธ ํ์ธํด์ฃผ๋ ๋ฏธ๋ค์จ์ด ๋ํ ๊ตฌํํ์์ต๋๋ค.
์ ํ ์์ธํ์ด์ง์์ ์ฌ๊ณ ํ์ธ๊ณผ ์ํ ๋ฆฌ๋ทฐ๋ฅผ ๋จ๊ธธ ์ ์์ผ๋ฉฐ, ์ฅ๋ฐ๊ตฌ๋์ ๋ด์ ์ ์๋ ๊ธฐ๋ฅ์ ๊ตฌํํ์์ต๋๋ค.
navbar์ ๋๋ณด๊ธฐ ์์ด์ฝ์ ํด๋ฆญํ๋ฉด, ๊ฒ์์ด ๊ฐ๋ฅํ ํ์ด์ง๋ก ์ด๋๋๊ณ **('/shop/search')**
ํค์๋๋ฅผ ์
๋ ฅํ๋ฉด ํด๋นํ๋ ์์ดํ
์ ๋ณผ ์ ์๋๋ก ๊ตฌํํ์์ต๋๋ค.
์ ํ ์์ธํ์ด์ง์์ ๋ง์์ ๋๋ ์ํ์ ์ฅ๋ฐ๊ตฌ๋์ ์ถ๊ฐ๊ฐ ๊ฐ๋ฅํ๋ฉฐ, Cart ํ์ด์ง์์ ์ญ์ ์ ์๋ ๋ณ๊ฒฝ, ์ฃผ๋ฌธํ๊ธฐ ๋ฑ์ ๊ธฐ๋ฅ์ด ๊ฐ๋ฅํฉ๋๋ค.
์ ์ ๊ฐ ์ฅ๋ฐ๊ตฌ๋์์ ์ฃผ๋ฌธํ๊ธฐ๋ฅผ ๋๋ฅด๋ฉด Checkout process ํ์ด์ง๋ก ๋์ด๊ฐ ๋ฐฐ์ก์ง๋ฅผ ์
๋ ฅํ๊ณ , ๊ฒฐ์ ๋ฐฉ์์ ์ ํ, ์ฃผ๋ฌธ ํ์ธ์ ํ๋ฉด ๊ฒฐ์ ํ์ด์ง๋ก ์ด๋ํ๊ฒ ๋ฉ๋๋ค.
ํ์ดํ ๊ฒฐ์ ๋ชจ๋์ ํตํด ํ์ดํ์ด๋ ์ ์ฉ์นด๋๋ก ๊ฒฐ์ ๊ฐ ๊ฐ๋ฅํ๋๋ก ๊ตฌํํ์์ต๋๋ค.
์ ์ ๋ ํ๋กํ์์ ์ ์ ์ ๋ณด์ ์ฃผ๋ฌธ ์ ๋ณด, ๋ฐฐ์ก ์ํ ๋ฑ์ด ํ์ธ ๊ฐ๋ฅํฉ๋๋ค.
Admin ํ์ด์ง์์ admin ์ ์ ๋ ์ ์ฒด ์ ์ ์ ๋ชฉ๋กํ์ธ, ์ ์ ์ ๋ณด ์์ , ์ญ์ ๊ฐ ๊ฐ๋ฅํ๋ฉฐ
์ ์ฒด ์ ํ ํ์ธ, ๋ฑ๋ก, ์ญ์ , ์
๋ฐ์ดํธ(์์ ) ํ ์ ์๋๋ก ๊ฐ๊ฐ CRUD ๊ธฐ๋ฅ์ ๊ตฌํํ์์ต๋๋ค.
order ํ์ด์ง ์ฃผ๋ฌธ ๋ชฉ๋ก ๋ฆฌ์คํธ๊ฐ ํ์ธ ๊ฐ๋ฅํ๋ฉฐ, ๋ฐฐ์ก์ด ์๋ฃ๋๋ฉด admin์ ์ ๋ ๋ฐฐ์ก์๋ฃ๋ฅผ ํด๋ฆญํ์ฌ ์ ์ ์๊ฒ ๋ฐฐ์ก์ด ์๋ฃ๋์์์ ์๋ฆฝ๋๋ค.
๋ฐ์คํฌํ, ์์ดํจ๋, ๋ชจ๋ฐ์ผ ์์ผ๋ก ๋ฐ์ํ ์น์ ๊ตฌํํ์์ต๋๋ค.
ํ๋ก ํธ์๋ ๊ฐ๋ฐ์๋ ๋ฐฑ์๋ ๋ก์ง์ ์ถฉ๋ถํ ์ดํดํด์ผ ํ๋ค ํ๋จํ์์ต๋๋ค.
Node.js์ express, mongoDB๋ฅผ ์ฌ์ฉํด ์๋ฒ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ตฌ์ฑํ๊ณ ์ฝ๋๋ฅผ ๊ตฌํํ๋ฉด์ ์ค๋ ์๊ฐ์ด ๊ฑธ๋ ธ์ง๋ง,
ํ๋ก ํธ์๋ ์ชฝ์์ ์์ฒญํ๊ณ ๋ฐ์์ค๋ ๋ฐ์ดํฐ๊ฐ ์ด๋ค ๊ฒ์ธ์ง ์ดํดํ๊ณ ์ด๊ฒ์ ์ด๋ป๊ฒ ํ์ฉํ์ฌ ํด๋ผ์ด์ธํธ ์์์ ํ๋ฉด์ ๋ํ๋ผ ์ ์๋์ง์ ๋ํด ๋ ๊น์ ์ดํด๋ฅผ ํ ์ ์์๋ ๊ฒฝํ์ด์์ต๋๋ค.
์ด๋ฒ ํ๋ก์ ํธ๋ฅผ ํตํด ์ ๋ฐ์ ์ธ e-commerce ํ๋ซํผ์ ๋น์ฆ๋์ค ๋ก์ง๊ณผ RESTful-api์ ๋ํ ์ดํด,
ํ ํฐ์ ์ด์ฉํ ํ์๊ฐ์
/ ๋ก๊ทธ์ธ / ๋ก๊ทธ์์ ๊ตฌํ, MongoDB๋ฅผ ํตํ NoSQL์ ๋ํ ์ดํด, css ์ ์ฒ๋ฆฌ๊ธฐSCSS ๋ฅผ ์ด์ฉํ๊ณ BEM์ ๋ฐ๋ฅธ ์คํ์ผ๋ง,
GSAP ์ ์ด์ฉํ ์ ๋๋ฉ์ด์
๊ตฌํ, Redux ๋ฅผ ์ด์ฉํ ์ํ๊ด๋ฆฌ์ ๊ดํ ๊ณต๋ถ๋ฅผ ํ ์ ์์์ต๋๋ค.