Skip to content

ESG-TEAM3-PROJECT/emodi-front

Repository files navigation

[ํฌํŠธํด๋ฆฌ์˜ค] emodi :: ๊ฐ์ •๋ถ„์„ ์ผ๊ธฐ์žฅ

#๊ฐ์ •๋ถ„์„ #์ผ๊ธฐ์žฅ #๋‹ฌ๋ ฅ #ํšŒ์›๊ฐ€์ž…/๋กœ๊ทธ์ธ #CRUD

๐Ÿ’ก ์‚ฌ์šฉ์ž๊ฐ€ ๊ฐ ๋‚ ์งœ์— ์ผ๊ธฐ๋ฅผ ์ž‘์„ฑํ•˜์—ฌ ์˜ฌ๋ฆฌ๋ฉด, Naver CLOVA์˜ ๊ฐ์ • ๋ถ„์„์„ ์ด์šฉํ•ด ๊ทธ๋‚ ์˜ ๊ฐ์ •์„ ์ด๋ชจ์ง€๋กœ ํ‘œ์‹œํ•˜์—ฌ ๋‹ฌ๋ ฅ์— ๋„์›Œ์ฃผ๋Š” ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.

๊ฐœ๋ฐœ ๊ธฐ๊ฐ„ : 2024.06.10~2024.06.27 (18์ผ)

Github Repository Link

https://github.com/ESG-TEAM3-PROJECT
https://github.com/ESG-TEAM3-PROJECT/emodi-front
https://github.com/ESG-TEAM3-PROJECT/emodi-back

๐Ÿ’ญ ๊ฐœ๋ฐœ ๋™๊ธฐ

์ด๋ฒˆ SW ์—”์ง€๋‹ˆ์–ด ํŠธ๋ž™์—์„œ ๋ฐฐ์šด ๋‚ด์šฉ์„ ๋ฐ”ํƒ•์œผ๋กœ ๊ธฐ๋ณธ์ ์ธ CRUD ๊ธฐ๋Šฅ์ด ํฌํ•จ๋œ ์›น ์„œ๋น„์Šค๋ฅผ ๊ธฐํšํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์—ฌ๋Ÿฌ ์•„์ด๋””์–ด๋ฅผ ๊ณ ๋ คํ•œ ๋์—, ํšŒ์›๊ฐ€์ž… ๋ฐ ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ์ด ํ•„์š”ํ•œ ์ผ๊ธฐ์žฅ ์„œ๋น„์Šค๋ฅผ ๋งŒ๋“ค๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ผ๋ฐ˜์ ์ธ ์ผ๊ธฐ์žฅ๊ณผ ์ฐจ๋ณ„์ ์„ ๋‘๊ธฐ ์œ„ํ•ด Naver CLOVA์—์„œ ์ œ๊ณตํ•˜๋Š” Sentiment API๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž๊ฐ€ ์ž‘์„ฑํ•œ ๊ธ€์˜ ๊ฐ์ •์„ ๋ถ„์„ํ•ด์ฃผ๋Š” ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

๐Ÿ“นย ์‹œ์—ฐ ์˜์ƒ

https://youtu.be/YgZpJEplCP0

๐ŸชŸ ์ฃผ์š” ๊ธฐ๋Šฅ

  1. ๋กœ๊ทธ์ธ ๋ฐ ํšŒ์›๊ฐ€์ž… ๊ธฐ๋Šฅ
    • ํšŒ์›๊ฐ€์ž… ํŽ˜์ด์ง€์—์„œ๋Š” ์ด๋ฉ”์ผ, ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅ ๋ฐ›๋Š”๋‹ค.
    • ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์žฌํ™•์ธํ•˜๋Š” ์ž…๋ ฅ๋ž€์„ ํ†ตํ•ด ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ œ๋Œ€๋กœ ์ž…๋ ฅํ–ˆ๋Š”์ง€ ๋‹ค์‹œ ํ™•์ธํ•œ๋‹ค.
    • ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€์—์„œ๋Š” ์ด๋ฉ”์ผ๊ณผ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ์ธ์ฆ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.
    • ๋กœ๊ทธ์ธ ์„ฑ๊ณต ์‹œ ๋ฉ”์ธ ํŽ˜์ด์ง€๋กœ ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ๋˜๋ฉฐ, ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์˜ ์ผ๊ธฐ๋ฅผ ์ž‘์„ฑ ๋ฐ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.
    • ๋กœ๊ทธ์•„์›ƒ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์—ฌ ์‚ฌ์šฉ์ž๊ฐ€ ์–ธ์ œ๋“ ์ง€ ๋กœ๊ทธ์•„์›ƒํ•  ์ˆ˜ ์žˆ๋‹ค.
  2. ๋ฉ”์ธ ํŽ˜์ด์ง€์—์„œ ๋‹ฌ๋ ฅ ํŽ˜์ด์ง€๋กœ ๋„˜์–ด๊ฐ€์„œ ์ผ๊ธฐ ์ž‘์„ฑ ๊ธฐ๋Šฅ
    • ์‚ฌ์šฉ์ž๊ฐ€ ์บ˜๋ฆฐ๋”์˜ ํŠน์ • ๋‚ ์งœ๋ฅผ ํด๋ฆญํ•˜๋ฉด ํ•ด๋‹น ๋‚ ์งœ์— ์ผ๊ธฐ๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•œ๋‹ค.
    • ์ผ๊ธฐ ์ž‘์„ฑ ํŽ˜์ด์ง€์—์„œ๋Š” ์ œ๋ชฉ๊ณผ ๋ณธ๋ฌธ์„ ์ž…๋ ฅํ•œ๋‹ค.
    • ์ž‘์„ฑ ์™„๋ฃŒ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด ์ผ๊ธฐ๊ฐ€ ์ €์žฅ๋˜๊ณ , ๊ฐ์ • ๋ถ„์„์ด ์ž๋™์œผ๋กœ ์ˆ˜ํ–‰๋œ๋‹ค.
    • ๊ฐ์ • ๋ถ„์„ ๊ฒฐ๊ณผ์— ๋”ฐ๋ผ ํ•ด๋‹น ๋‚ ์งœ์— ๊ธฐ๋ถ„์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ด๋ชจ์ง€๊ฐ€ ์บ˜๋ฆฐ๋”์— ํ‘œ์‹œ๋œ๋‹ค.
  3. ์ผ๊ธฐ ์กฐํšŒ ๊ธฐ๋Šฅ
    • ์‚ฌ์šฉ์ž๋Š” ์บ˜๋ฆฐ๋”์—์„œ ํŠน์ • ๋‚ ์งœ๋ฅผ ํด๋ฆญํ•˜์—ฌ ํ•ด๋‹น ๋‚ ์งœ์˜ ์ผ๊ธฐ๋ฅผ ์กฐํšŒํ•  ์ˆ˜ ์žˆ๋‹ค.
    • ์ผ๊ธฐ ์กฐํšŒ ํŽ˜์ด์ง€์—์„œ๋Š” ์ œ๋ชฉ, ์ž‘์„ฑ ๋‚ ์งœ, ๋ณธ๋ฌธ ๋‚ด์šฉ์ด ํ‘œ์‹œ๋œ๋‹ค.

๐Ÿ–ฅ๏ธ ์‚ฌ์šฉํ•œ ๊ธฐ์ˆ 

Front : Next.js, React, Typescript, Styled-components

Untitled 1 Untitled 2 Untitled Untitled 3

Back : JAVA Springboot, MySQL

Untitled 4 Untitled 5

Untitled 6

ThirdParty : CLOVA Sentiment API

Untitled 7 Untitled 8

๐Ÿ”„ ์—…๋ฐ์ดํŠธ ๊ณ„ํš

  1. ์ผ๊ธฐ ์‚ญ์ œ ๊ธฐ๋Šฅ
    • ์บ˜๋ฆฐ๋”์—์„œ ํŠน์ • ๋‚ ์งœ ์ผ๊ธฐ์˜ ์‚ญ์ œ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด ์‚ญ์ œ ํ™•์ธ ๋ฉ”์‹œ์ง€๊ฐ€ ๋‚˜ํƒ€๋‚˜๊ณ , ํ™•์ธ์„ ๋ˆ„๋ฅด๋ฉด ์ผ๊ธฐ๊ฐ€ ์‚ญ์ œ๋œ๋‹ค.
    • ์ผ๊ธฐ๊ฐ€ ์‚ญ์ œ๋˜๋ฉด ํ•ด๋‹น ๋‚ ์งœ์˜ ์ด๋ชจ์ง€๋„ ํ•จ๊ป˜ ์ œ๊ฑฐ๋œ๋‹ค.
  2. ์ผ๊ธฐ ์ˆ˜์ • ๊ธฐ๋Šฅ
    • ์บ˜๋ฆฐ๋”์—์„œ ํŠน์ • ๋‚ ์งœ์˜ ์ผ๊ธฐ์˜ ์ˆ˜์ • ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด, ์ผ๊ธฐ ์ˆ˜์ • ํŽ˜์ด์ง€์—์„œ๋Š” ์ œ๋ชฉ๊ณผ ๋ณธ๋ฌธ์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.
    • ์ˆ˜์ • ์™„๋ฃŒ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด ์ผ๊ธฐ๊ฐ€ ์—…๋ฐ์ดํŠธ๋˜๊ณ , ๊ฐ์ • ๋ถ„์„์ด ๋‹ค์‹œ ์ˆ˜ํ–‰๋œ๋‹ค.
    • ์—…๋ฐ์ดํŠธ๋œ ๊ฐ์ • ๋ถ„์„ ๊ฒฐ๊ณผ์— ๋”ฐ๋ผ ์บ˜๋ฆฐ๋”์˜ ์ด๋ชจ์ง€๊ฐ€ ๋ณ€๊ฒฝ๋œ๋‹ค.
  3. ์บ˜๋ฆฐ๋”์—์„œ ์ด๋ชจ์ง€์™€ ์‚ฌ์šฉ์ž ์ž‘์„ฑ ์ œ๋ชฉ ๋ณด๊ธฐ
    • ๋ฉ”์ธ ํŽ˜์ด์ง€์ธ ์บ˜๋ฆฐ๋”์—์„œ๋Š” ๊ฐ ๋‚ ์งœ์— ์ž‘์„ฑ๋œ ์ผ๊ธฐ์˜ ๊ฐ์ • ๋ถ„์„ ๊ฒฐ๊ณผ๋ฅผ ์ด๋ชจ์ง€๋กœ ํ‘œ์‹œํ•œ๋‹ค.
    • ์บ˜๋ฆฐ๋” ํ™”๋ฉด์—์„œ๋Š” ์ œ๋ชฉ๊ณผ ์ด๋ชจ์ง€๊ฐ€ ํ‘œ์‹œ๋œ๋‹ค.
  4. ๊ฐ์ • ๋ถ„์„ ํ†ต๊ณ„ ์ œ๊ณต ๊ธฐ๋Šฅ
    • ํ•œ ๋‹ฌ ๋™์•ˆ ๋ถ„์„๋œ ์‚ฌ์šฉ์ž์˜ ๊ฐ์ •์˜ ํ†ต๊ณ„๋ฅผ ๊ทธ๋ž˜ํ”„๋กœ ์‹œ๊ฐํ™”ํ•˜์—ฌ ์ œ๊ณตํ•œ๋‹ค.

๐Ÿ’ฏ ๋А๋‚€ ์ 

  • ์‹œํ—˜ ๊ธฐ๊ฐ„, ๊ฐ•์˜ ์ˆ˜๊ฐ•, ์‚ฌํ›„ ํ…Œ์ŠคํŠธ ๋“ฑ์œผ๋กœ ์ธํ•ด ์งง์€ ๊ธฐ๊ฐ„์— ์—ฌ๋Ÿฌ ์ผ์ •์ด ๊ฒน์ณ ์žˆ์–ด ์•„์‰ฌ์› ์Šต๋‹ˆ๋‹ค.
  • SSR๊ณผ SEO์—์„œ ๊ฐ•์ ์„ ๊ฐ€์ง€๋Š” Next.js๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด ์ข‹์•˜์Šต๋‹ˆ๋‹ค. ํŠนํžˆ Typescript๋ฅผ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋„์ž…ํ•ด์„œ Type ๊ด€๋ จ ์˜ค๋ฅ˜๊ฐ€ ์—†๋Š” ์ƒํƒœ๋กœ ๊ณ„์† ์ง„ํ–‰ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.
  • Git flow์™€ Commit Convention์„ ์ •ํ•˜๊ณ  ๊ฐ ๊ธฐ๋Šฅ๋ณ„๋กœ issue๋ฅผ ์ƒ์„ฑํ•˜๊ณ , issue ๋ฒˆํ˜ธ์— ๋งž๋Š” branch์—์„œ ์ž‘์—…ํ•œ ํ›„ Pull Request์„ ๋“ฑ๋กํ•ด์„œ ๋…ผ์˜ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์ง„ํ–‰ํ•  ์ˆ˜ ์žˆ์–ด ์ข‹์•˜์Šต๋‹ˆ๋‹ค.

๐Ÿ‘ฅ ํŒ€์›

์ด๋ฆ„ Github
๊น€์€์ˆ˜ (ํŒ€์žฅ, ๋ฐฑ์—”๋“œ) https://github.com/minisyu
๊น€์„ ์ง„ (ํ”„๋ก ํŠธ์—”๋“œ) https://github.com/dawncoding
๊น€์ง€ํ™˜ (ํ”„๋ก ํŠธ์—”๋“œ) https://github.com/Turtle-Hwan
๊น€์ง€ํ˜„ (๋ฐฑ์—”๋“œ) https://github.com/jyun27
์ด์žฌ์„ฑ (๋ฐฑ์—”๋“œ) https://github.com/orgs/ESG-TEAM3-PROJECT/people/crLsTofu

๐ŸŽจ ํ˜‘์—… ํˆด

Figma

https://www.figma.com/design/7yxODfesEnCCOFNiI9tHbE/emodi?node-id=0-1&t=VSmWT02Kc6UMs1tU-1

Untitled 9

Notion

Untitled 10 Untitled 11

0 1

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •