Team Members - codestates/Reciper-client GitHub Wiki
'์ธ์์ ๋๋ฆฌ ์ด๋กญ๊ฒ ๋ง๋ค์๋ผ๋ ์ ์ '์ผ๋ก ์ด์๋ ์๋ฏธ๋ก ๋ง๋ค์ด์ง ํ๋ช
์ผ๋ก
์ฐ์ฐํ ์ฐ๋ฆฌ ํ ๋ฉค๋ฒ๋ค์ ์ฑ๊ณผ ์ผ์นํ๊ธฐ์ ๋์ฑ ์๋ฏธ์๋ ํ ์ด๋ฆ์ด ๋์์ต๋๋ค๐ค
- Role : Team Member
- Position : Front-End
-
Stack :
TypeScript
Socket.io
React
Redux
Redux Toolkit
Styled Components
Axios
-
Works :
๐ป Contribution
- Common ์ปดํฌ๋ํธ ์ ์ (Input, Button, Select)
- ๋ก๋ฉ์ ๋ก๋ฉ ์ ๋๋ฉ์ด์ ๊ตฌํ
- ์๋ฒ์์ ๋ฐ์ access token์ local storage์ ์ ์ฅ
- login์ ๋น๋๊ธฐ ์์ฒญ์ ํ๊ณ login์ ๊ฒ์ฆํ๋ ์ฝ๋ ์ถ๊ฐ
- ๋น๋ก๊ทธ์ธ ์ ์ ๊ฐ ํน์ ํ์ด์ง ์ ์ ์ ๋ง๋ ๊ธฐ๋ฅ ๊ตฌํ
- ์ ์ ์ ๋ณด ์ ๋ ฅ์ ์ ํจ์ฑ ๊ฒ์ฌ ๊ธฐ๋ฅ ๊ตฌํ
- Recruit List
- ํ์๋ชจ์ง ๊ฒ์๊ธ ๋ฆฌ์คํธ ํ์ด์ง ์คํ์ผ๋ง + ๋ฐ์ดํฐ ์์ฒญ ๊ตฌํ
- Search ํ๊ทธ ๊ฒ์ ์ถ๊ฐ ๊ธฐ๋ฅ ๊ตฌํ
- Recruit ๋ฆฌ์คํธ ํํฐ ๊ธฐ๋ฅ ๊ตฌํ
- infinite scroll ๊ตฌํ
- Skeleton Loading ๊ตฌํ
- Recruit Create
- ํ์๋ชจ์ง ๊ฒ์๊ธ ๋ฑ๋ก ํ์ด์ง ์คํ์ผ๋ง
- ๊ฒ์๊ธ ์ด๋ฏธ์ง ์ ๋ก๋ ๊ธฐ๋ฅ ๊ตฌํ
- Recruit Detail
- ํ์๋ชจ์ง ๊ฒ์๊ธ ์์ธ ๋ด์ฉ ์กฐํ ํ์ด์ง ์คํ์ผ๋ง + ๋ฐ์ดํฐ ์์ฒญ ๊ตฌํ
- ๋ฐ์ดํฐํผ์ปค ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ด์ฉํด ๋ ์ง ์ ํ ๊ธฐ๋ฅ ๊ตฌํ
- ๋๊ธ ๋ฑ๋ก ๊ธฐ๋ฅ ๊ตฌํ
- ์์ธ ์๊ฐ ๊ธ์ ์์ฑํ๋ ๋ถ๋ถ HTML๋ก ๋ณํ
- Recruit Delete
- ๊ฒ์๊ธ ์ญ์ ๊ธฐ๋ฅ ๊ตฌํ
- ๋๊ธ ์ญ์ ๊ธฐ๋ฅ ๊ตฌํ
- Project List
- ํ๋ก์ ํธ ๋ฆฌ์คํธ ์กฐํ ํ์ด์ง ์คํ์ผ๋ง + ๋ฐ์ดํฐ ์์ฒญ ๊ตฌํ
- Project Create
- ํ๋ก์ ํธ ์์ฑ ํ์ด์ง ์คํ์ผ๋ง + ๋ฐ์ดํฐ ์์ฒญ ๊ตฌํ
- project url ์ค๋ณต ์ฒดํฌ, ์ ํจ์ฑ ๊ฒ์ฌ ๊ธฐ๋ฅ ๊ตฌํ
- ํ๋ก์ ํธ์ ํ์ ์ด๋ ๊ธฐ๋ฅ ๊ตฌํ
- Project Edit
- ํ๋ก์ ํธ ์์ ํ์ด์ง ์คํ์ผ๋ง + ๋ฐ์ดํฐ ์์ฒญ ๊ตฌํ
- WorkSpace ํ์ด์ง์ ๊ณตํต์ผ๋ก ์ฌ์ฉ๋๋ ์ปดํฌ๋ํธ ์ ์
- Kanban(์นธ๋ฐ๋ณด๋)
- Kanban ํ์ด์ง ์คํ์ผ๋ง
- task ํ์ด์ง ์คํ์ผ๋ง + ์์ธ ์ ๋ณด ์ ์ฅ ๊ธฐ๋ฅ ๊ตฌํ
- Drag and Drop ๊ธฐ๋ฅ ๊ตฌํ
-
Socket.io
๋ฅผ ์ฌ์ฉํ์ฌ ์นธ๋ฐ ๋ฐ์ดํฐ ์ค์๊ฐ ์ํต ๊ตฌํ - ๋ค๋ฅธ ์ ์ ๊ฐ task, taskbox ์์ ์ ํด๋น ์์ดํ ์ ๋๋๊ทธ ํ์ง ๋ชปํ๊ฒ ๋ง๋ ๊ธฐ๋ฅ ๊ตฌํ
- ํํธ ์์ฑ / ์์ / ์ญ์ ๊ธฐ๋ฅ ๊ตฌํ
- Calendar(๋ฌ๋ ฅ)
- Calendar ํ์ด์ง ์คํ์ผ๋ง
-
Day.js
๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ด์ฉํ ๋ฌ๋ ฅ ๋ฐ์ดํฐ ๊ตฌํ - task bar๋ก ๋ฌ๋ ฅ์ task ํ์ ๊ตฌํ
- Role : Team Member
- Position : Front-End
-
Stack :
TypeScript
Socket.io
React
Redux
Redux Toolkit
Styled Components
Axios
-
Works :
๐ป Contribution
-
React
๋ฅผ ์ฌ์ฉํ์ฌ ์ด๊ธฐ ์ธํ - Common ์ปดํฌ๋ํธ ์ ์ (Header, Select Box)
- axios ์์ฒญ์ util๋ก ๊ตฌํ
- ๋ก๊ณ ์ ์
- Landing ํ์ด์ง ๋์์ธ + ์คํ์ผ๋ง
- ์คํฌ๋กค ์์น์ ๋ฐ๋ฅธ ํค๋ ๋ฐฑ๊ทธ๋ผ์ด๋ ์ด๋ฒคํธ ๊ตฌํ
- scroll์ ๋ฐ๋ฅธ ์ ๋๋ฉ์ด์ ๊ตฌํ
- ๋ฆฌ๋ทฐ ์์ธ ๋ณด๊ธฐ modal ๊ตฌํ
- ๋งจ ์๋ก ๊ฐ๊ธฐ ๊ธฐ๋ฅ ๊ตฌํ
- Login modal ์คํ์ผ๋ง
- ๋ก๊ทธ์ธํ ๋ ์๋ด ๋ฉ์์ง, ์ ํจ์ฑ ๊ฒ์ฌ ๊ตฌํ
- ๋ก๊ทธ์์ ๊ธฐ๋ฅ ๊ตฌํ
- Profile Show
- ํ๋กํ ์ ๋ณด ์กฐํ ํ์ด์ง ์คํ์ผ๋ง
- ํ๋กํ ๋ ๋๋ง์ ์ ์ ๋ฐ์ดํฐ ์กฐํ ๊ตฌํ
- Profile Edit
- ํ๋กํ ์์ ํ์ด์ง ์คํ์ผ๋ง
- ํ๋กํ ์์ ๋ฒํผ ๋๋ฅธ ํ ์ ์ ๋ฐ์ดํฐ ๊ฐฑ์ ๊ธฐ๋ฅ ๊ตฌํ
- ํ๋กํ ์ด๋ฏธ์ง ์ ๋ก๋ ๊ธฐ๋ฅ ๊ตฌํ
- Chat(์ฑํ
)
- Chat ํ์ด์ง ์คํ์ผ๋ง
-
Socket.io
๋ฅผ ์ฌ์ฉํ์ฌ ์ฑํ ์ค์๊ฐ ์ํต ๊ตฌํ - ์ฑํ ๋ฉ์์ง๋ฅผ ์ ์ ๋ณ, ๋ ์ง๋ณ๋ก ๋ฌถ์ด์ ํ์ ๊ตฌํ
- ์ฑํ ์ฐฝ์ ํ๋กํ ์ด๋ฏธ์ง ํด๋ฆญ์ ํด๋น ์ ์ ์ ํ๋กํ ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ
- ์ฑํ ๋ฉ์์ง ๋ฑ๋ก / ์์ / ์ญ์ ๊ธฐ๋ฅ ๊ตฌํ
- infinite scroll ๊ตฌํ
- ์ฑํ ์ฐฝ์ ์ด๋ฏธ์ง ์ ๋ก๋ ๊ธฐ๋ฅ ๊ตฌํ (๋ฒํผ, drag and drop)
- ์ฑํ ๋ฐฉ ์์ฑ / ์์ / ์ญ์ ๊ธฐ๋ฅ ๊ตฌํ
-
- Role : Team Leader
- Position : Back-End
-
Stack :
TypeScript
Socket.io
Axios
Node.js
Express.js
mySQL
typeORM
Nodemailer
AWS
-
Works :
๐ป Contribution
-
express
,typescript
๋ฅผ ์ฌ์ฉํ์ฌ ์๋ฒ ๊ตฌ์ถ - router, controller ๋ถ๋ฅ ๋ฐ ํด๋ ์ ๋ฆฌ
-
typeORM
์ ์ฌ์ฉํ์ฌ mySQL ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ตฌ์ถ - ํ๋ก์ ํธ ๋ฌธ์ํ ์์
- README, WIKI, NOTION
- API ๋ฌธ์, ์คํค๋ง ๋์์ธ
- AWS ๋ฐฐํฌ
- RDS ์ธํ
- OAuth ์ธ์ฆ ๋ก๊ทธ์ธ ๊ธฐ๋ฅ ๊ตฌํ(google, github)
- nodemailer๋ก ๋ณด๋ด๋ ์ด๋ฉ์ผ ๋์์ธ(HTML)
- access token์ผ๋ก ์ ์ ์ ๋ณด๋ฅผ ํ์ธํ๋ middleware ๊ตฌํ
- refresh token ์ฌ์ฉํ์ฌ ์๋ก์ด access token ๋ฐ๊ธ ๊ธฐ๋ฅ ๊ตฌํ
- ํ๋กํ ์ ๋ณด ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ
- profile ๊ด๋ จ ๊ธฐ๋ฅ(2๊ฐ) ์๋ฌ ์์ ๋ฐ ์ฝ๋ ๋ณด์
- ํ์๋ชจ์ง ๊ฒ์๊ธ ์์ธ๋ด์ฉ ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ
- ํ์๋ชจ์ง ๊ฒ์๊ธ ์ญ์ ๊ธฐ๋ฅ ๊ตฌํ
- ๋๊ธ ์ญ์ ๊ธฐ๋ฅ ๊ตฌํ
- ํน์ stack์ ๊ธฐ์ค์ผ๋ก ํ์๋ชจ์ง ๊ฒ์๊ธ ๊ฒ์ ๊ธฐ๋ฅ ๊ตฌํ
- recruit ๊ด๋ จ ๊ธฐ๋ฅ(8๊ฐ) ์๋ฌ ์์ ๋ฐ ์ฝ๋ ๋ณด์
- ํ๋ก์ ํธ ์ ๋ณด, ๋ฉค๋ฒ ์ ๋ณด๋ฅผ ํ์ธํ๋ middleware ๊ตฌํ
- ํ๋ก์ ํธ ๋ฆฌ์คํธ ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ
- ํ๋ก์ ํธ ์์ฑ ๊ธฐ๋ฅ ๊ตฌํ
- ํ๋ก์ ํธ ์์ธ ์ ๋ณด ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ
- ํ๋ก์ ํธ ์์ ๊ธฐ๋ฅ ๊ตฌํ
- ํ๋ก์ ํธ ์ญ์ ๊ธฐ๋ฅ ๊ตฌํ
- ํ์ ์ด๋ ๊ธฐ๋ฅ ๊ตฌํ
- ํ์ ์ด๋ ์๋ต(ํ๋ก์ ํธ ์ฐธ๊ฐ) ๊ธฐ๋ฅ ๊ตฌํ
- project ๊ด๋ จ ๊ธฐ๋ฅ(7๊ฐ) ์๋ฌ ์์ ๋ฐ ์ฝ๋ ๋ณด์
- Chat(์ฑํ
)
-
socket.io
๋ฅผ ์ฌ์ฉํ์ฌ ์ฑํ ๊ธฐ๋ฅ ๊ตฌํ - ์ฑํ ๋ฉ์์ง ๋ณด๋ด๊ธฐ
- ์ฑํ ๋ฉ์์ง ์์ ํ๊ธฐ
- ์ฑํ ๋ฉ์์ง ์ญ์ ํ๊ธฐ
- ์ฑํ ๋ฉ์์ง ๋ด์ญ ์กฐํ
-
multer
๋ฅผ ์ฌ์ฉํ์ฌ ์ฑํ ์์ ์ด๋ฏธ์ง ์ ๋ก๋ํ๊ธฐ - ์ฑํ ๋ฐฉ ๋ฆฌ์คํธ ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ
- ์๋ก์ด ์ฑํ ๋ฐฉ ์์ฑ ๊ธฐ๋ฅ ๊ตฌํ
- ์ฑํ ๋ฐฉ ์ด๋ฆ ์์ ๊ธฐ๋ฅ ๊ตฌํ
- ์ฑํ ๋ฐฉ ์ญ์ ๊ธฐ๋ฅ ๊ตฌํ
- chat ๊ด๋ จ ๊ธฐ๋ฅ(4๊ฐ) ์๋ฌ ์์ ๋ฐ ์ฝ๋ ๋ณด์
-
- Kanban(์นธ๋ฐ๋ณด๋)
- ํํธ ๊ด๋ จ API(route, controller) ์ธํ
- kanban ๊ด๋ จ ๊ธฐ๋ฅ(4๊ฐ) ์๋ฌ ์์ ๋ฐ ์ฝ๋ ๋ณด์
-
socket.io
๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌํํ ์นธ๋ฐ๋ณด๋ ๊ธฐ๋ฅ ์๋ฌ ์์ ๋ฐ ์ฝ๋ ๋ณด์
-
- Role : Team Member
- Position : Back-End
-
Stack :
TypeScript
Socket.io
Node.js
Express.js
mySQL
typeORM
JWT
Nodemailer
Redis
AWS
-
Works :
๐ป Contribution
-
express
,typescript
๋ฅผ ์ฌ์ฉํ์ฌ ์๋ฒ ๊ตฌ์ถ -
typeORM
์ ์ฌ์ฉํ์ฌ mySQL ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ตฌ์ถ -
redis
์ pub/sub์ ๋ํ ์ดํด์ ๊ตฌํ
-
AWS
https ๋ฐฐํฌ ๋ฐ AWS ์ํคํ ์ณ ์ ๋ฐ์ ์ดํด ( CloudFront Cookie ์ด์ ํด๊ฒฐ ) - EC2, RDS, ELB, ACM, Route53, CloudFront, S3 ์ธํ
- domain(reciper.me) ๊ด๋ฆฌ
- ๋ฐฐํฌ ๋จ๊ณ๋ฅผ ์ ์ฒด์ ์ผ๋ก ๊ด๋ฆฌ
- ์ด๋ฉ์ผ ์ธ์ฆ ๋ก๊ทธ์ธ ๊ตฌํ (nodeEmailer)
- access token์ผ๋ก ์ ์ ์ ๋ณด๋ฅผ ํ์ธํ๋ middleware ๊ตฌํ
- ํ๋กํ ์ ๋ณด ์์ ๊ธฐ๋ฅ ๊ตฌํ
-
multer
๋ฅผ ์ฌ์ฉํ์ฌ ํ๋กํ ์ด๋ฏธ์ง ์ ๋ก๋ ๊ธฐ๋ฅ ๊ตฌํ
- ํ์๋ชจ์ง ๊ฒ์๊ธ ๋ฆฌ์คํธ ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ
- ํ์๋ชจ์ง ๊ฒ์๊ธ ๋ฑ๋ก ๊ธฐ๋ฅ ๊ตฌํ
- ํ์๋ชจ์ง ๊ฒ์๊ธ ์์ ๊ธฐ๋ฅ ๊ตฌํ
- ๋๊ธ ๋ฑ๋ก ๊ธฐ๋ฅ ๊ตฌํ
-
multer
๋ฅผ ์ฌ์ฉํ์ฌ ๊ฒ์๊ธ ์ด๋ฏธ์ง ์ ๋ก๋ ๊ธฐ๋ฅ ๊ตฌํ - stack ์ ๋ณด๋ฅผ ๊ฐ์ ธ์ค๋ ๊ธฐ๋ฅ ๊ตฌํ
- ํ์๋ชจ์ง ๊ฒ์๊ธ์ ๋ํ dummy data generator ์ ์(ํฌ๋กค๋ง ํฌํจ)
- ํ๋ก์ ํธ ์ญ์ ๊ธฐ๋ฅ์์ ํด๋น ํ๋ก์ ํธ์ ์ฐ๊ฒฐ๋ ๋ชจ๋ ๋ฐ์ดํฐ ์ง์ฐ๋ ์์ ๊ตฌํ
- Chat(์ฑํ
)
-
socket.io
๋ฅผ ์ฌ์ฉํ์ฌ ์ฑํ ๊ธฐ๋ฅ ์ธํ
-
- Kanban(์นธ๋ฐ๋ณด๋)
-
socket.io
๋ฅผ ์ฌ์ฉํ์ฌ ์นธ๋ฐ๋ณด๋ ๊ธฐ๋ฅ ๊ตฌํ - ์นธ๋ฐ๋ณด๋์ ์ ์ฒด ๋ฐ์ดํฐ ์กฐํ
- task, taskbox ์์ฑํ๊ธฐ
- task, taskbox ์์ ํ๊ธฐ
- task, taskbox ์ญ์ ํ๊ธฐ
- task, taskbox ์์ ์ block ์ฒ๋ฆฌํ๊ธฐ
- task, taskbox drag and drop ์์ ์ ํ๋ฉด์ ๋ฐ๋ก ๋ฐ์ํ๊ธฐ
- ํํธ ๋ฆฌ์คํธ ์กฐํ ๊ธฐ๋ฅ ๊ตฌํ
- ์๋ก์ด ํํธ ์์ฑ ๊ธฐ๋ฅ ๊ตฌํ
- ํํธ ์ด๋ฆ ์์ ๊ธฐ๋ฅ ๊ตฌํ
- ํํธ ์ญ์ ๊ธฐ๋ฅ ๊ตฌํ
-
- Webcam(ํ์ํ์)
-
webRTC
๋ฅผ ์ฌ์ฉํ์ฌ ํ์ํ์ ๊ธฐ๋ฅ ๊ตฌํ
-
-