Β πΒ λͺ©μ°¨
- Β Β π Introduction
- Β Β πΉ Demo
- Β Β π» Architecture
- Β Β π‘ Tech Stack
- Β Β ποΈ Database
- Β Β π API
- Β Β π€ Git Convention
- Β Β π Package Convention
- Β Β π¨βπ©βπ§βπ§ Team
λ¬Όκ°κ° μΉμλ μμ¦, μ₯λ³΄κΈ°κ° λΆλ΄μ€λ½μ§ μμΌμ κ°μ?
μ€νλΌμΈ λ§€μ₯μ "νΉκ°" μνμ΄ μ λ§ μ΅μ κ°μΈμ§, μλΉμμ μλ¬Έμ ν΄κ²°νκ³ μ ν©λλ€.
μ€λ§νΈμΉ΄νΈκ° μ€νλΌμΈκ³Ό μ¨λΌμΈμ κ°κ²©μ μ€μκ°μΌλ‘ λΉκ΅ν΄ νλͺ
ν μλΉλ₯Ό λμλ립λλ€.
- PWA μ§μΒ :Β Β μΉ λ΄μμ κ°νΈνκ² μ±μ μ€μΉν μ μλλ‘ μλ΄
- μμ λ‘κ·ΈμΈΒ :Β Β Google, Naver, Kakao κ³μ μΌλ‘ κ°νΈνκ² λ‘κ·ΈμΈ
- 체ν¬λ¦¬μ€νΈΒ :Β Β μ₯ λ³Ό νλͺ©μ μμ½κ² κ΄λ¦¬
- μ€λ§νΈ λ μ¦Β :Β Β μ€νλΌμΈ λ§€μ₯μ κ°κ²©ν 촬μ ν, μ¨λΌμΈ μ΅μ κ°μ λΉκ΅ νμΈ
- 1λ¨κ³Β :Β Β ChatGPT Vision API - 촬μν κ°κ²©νμ 'μνλͺ , μ©λ, κ°κ²©' μΆμΆ
- 2λ¨κ³Β :Β Β Naver Shopping API - ν΄λΉ μνμ μ¨λΌμΈ μ΅μ κ° λͺ©λ‘ 3κ³³ μ 곡
- 3λ¨κ³Β :Β Β ChatGPT Text API - μ΅μ κ° λͺ©λ‘μ λΆνμν λ΄μ©μ κΉλν μ 리
- μ₯λ°κ΅¬λΒ :Β Β μνλ μνμ μ ννμ¬ λ΄κ³ , μ΄ κ²°μ κΈμ‘ λ° μ μ½ κΈμ‘μ νμΈ
- λ΄ μ 보 :Β Β μ€λ§νΈμΉ΄νΈλ‘ μλ λμ μ μ½ κΈμ‘ νμΈ
πΒ Β Demo VideoΒ :Β Β Play!
PWA μ§μ | μμ λ‘κ·ΈμΈ | 체ν¬λ¦¬μ€νΈ |
---|---|---|
![]() |
![]() |
![]() |
PWA μΉμ± μ€μΉ | ꡬκΈ, λ€μ΄λ², μΉ΄μΉ΄μ€ κ³μ | μ₯ λ³Ό νλͺ© κ΄λ¦¬ |
μ€λ§νΈ λ μ¦ | μ₯λ°κ΅¬λ | λ΄ μ 보 |
---|---|---|
![]() |
![]() |
![]() |
κ°κ²©ν 촬μ & μ΅μ κ° λΉκ΅ | κ²°μ κΈμ‘ & μ μ½ κΈμ‘ | νλ‘ν κ΄λ¦¬ & λμ μ μ½ κΈμ‘ |
Frontend | Backend | SecurityΒ Β &Β Β DB | Deployment | Other |
---|---|---|---|---|
- Frontend : React, JavaScript
- Backend : Spring Boot, Java | Security, JWT, OAuth2 | MySQL
- External API : ChatGPT, Naver Shopping
- Deployment : AWS Amplify, AWS Elastic Beanstalk, Docker, Github Actions
- Documentation : Notion, Swagger


- λ°λμ "develop"μμ λ»μ΄λμ developμΌλ‘ "merge" λμ΄μΌνλ€.
main
: μΆμ λ°°ν¬ CI/CDμ© branch (λ―Έμ¬μ©)develop
: κ°λ° λ°°ν¬ CI/CDμ© branchfeature
: κΈ°λ₯ ꡬνμ© branchIssue_μ’ λ₯/#Issue_λ²νΈ
: branch μμ±
β¨ Feat
π Fix
β»οΈ Refactor
β
Test
π File
π Docs
π§ Chore
βοΈ Setting
μ’ λ₯ | λ΄μ© |
---|---|
β¨ Feat | κΈ°λ₯ ꡬν |
π Fix | λ²κ·Έ μμ |
β»οΈ Refactor | μ½λ 리ν©ν λ§ |
β Test | ν μ€νΈ μ 무 |
π File | νμΌ μ΄λ λλ μμ , νμΌλͺ λ³κ²½ |
π Docs | md, yml λ±μ λ¬Έμ μμ |
π§ Chore | μ΄μΈμ μ λ§€νκ±°λ μμν μμ |
βοΈ Setting | λΉλ λ° ν¨ν€μ§ λ± νλ‘μ νΈ μ€μ |
< Issue Title >
[Issue_μ’
λ₯] ꡬν_μ£Όμλ΄μ©
ex-1) [Feat] λ‘κ·ΈμΈ νμ΄μ§ UI ꡬν
ex-2) [Feat] λ‘κ·ΈμΈ νμ΄μ§ κΈ°λ₯ ꡬν
ex-3) [Fix] λ‘κ·ΈμΈ μ°λλ‘μ§ μ€λ₯ μμ
< Commit Message >
[#Issue_λ²νΈ] Issue_μ’
λ₯: ꡬν_λ΄μ©
ex-1) [#32] Feat: λ‘κ·ΈμΈ μλ΄λͺ¨λ¬ UI ꡬν
ex-2) [#33] Feat: λ‘κ·ΈμΈ κΈ°λ₯ μλ² μ°λ
ex-3) [#34] Fix: λ‘κ·ΈμΈ μ°λ API Path μμ
- Pull Requestλ§ λ λ¦¬κ³ , μ€μ Approveλ reviewerκ° νλ€.
- PRμ λν΄ μ΅μ 1λͺ μ΄μμ μΉμΈμ΄ μμ΄μΌ Mergeκ° κ°λ₯νλ€.
< PR Title >
[#Issue_λ²νΈ] Issue_μ’
λ₯: μ΄μλ΄μ©
ex) [#32] Feat: λ‘κ·ΈμΈ νμ΄μ§ UI ꡬν
βββ .github : Issue λ° PR ν
νλ¦Ώ
βββ public : PWA κ΅¬μ± νμΌ
βββ src
βββ apis : Axios μΈν°μ
ν°
βββ assets : μ΄λ―Έμ§ νμΌ
βββ components
βΒ Β βββ Modal : λͺ¨λ¬
βΒ Β βββ Navigation : λ€λΉλ°
βββ pages
βΒ Β βββ Product : μν νμ΄μ§
βΒ Β βββ User : μ¬μ©μ νμ΄μ§
βββ utils
Β Detailed StructureΒ :Β Open!
βββ .github
β βββ ISSUE_TEMPLATE
β β βββ custom.md
β β βββ feature.md
β β βββ fix.md
β β βββ refactor.md
β βββ PULL_REQUEST_TEMPLATE.md
βββ package.json
βββ public
βΒ Β βββ carticon128.png
βΒ Β βββ carticon192.png
βΒ Β βββ carticon512.png
βΒ Β βββ favicon.ico
βΒ Β βββ index.html
βΒ Β βββ linkthumbnail.png
βΒ Β βββ manifest.json
βΒ Β βββ service-worker.js
βββ src
βββ App.css
βββ App.js
βββ index.css
βββ index.js
βββ apis
βΒ Β βββ Api.jsx
βββ assets
βΒ Β βββ images
βΒ Β βββ google.png
βΒ Β βββ kakao.png
βΒ Β βββ mainicon.png
βΒ Β βββ naver.png
βΒ Β βββ smartcartlogo.png
βββ components
βΒ Β βββ Modal
βΒ Β βΒ Β βββ ConfirmModal.jsx
βΒ Β βΒ Β βββ DeleteUserModal.jsx
βΒ Β βββ Navigation
βΒ Β βββ BottomNav.jsx
βββ pages
βΒ Β βββ Product
βΒ Β βΒ Β βββ CameraPage.jsx
βΒ Β βΒ Β βββ CartPage.jsx
βΒ Β βΒ Β βββ ItemInfoPage.jsx
βΒ Β βΒ Β βββ LowestItemPage.jsx
βΒ Β βββ User
βΒ Β βββ LoginPage.jsx
βΒ Β βββ MainPage.jsx
βΒ Β βββ MyPage.jsx
βββ utils
βββ CheckToken.js
μ¬νμ§ | κΉν¬μ | λͺ©κ²½λ―Ό |
---|---|---|
![]() |
![]() |
![]() |
FullStack Developer, DevOps Engineer |
Frontend Developer, Designer |
Frontend Developer, Designer |