Skip to content

EatPic/EatPic-iOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿš€ ํ”„๋กœ์ ํŠธ ์ด๋ฆ„

๊ฐ„๋‹จํ•œ ํ•œ ์ค„ ์†Œ๊ฐœ

EatPic์€ ์‚ฌ์šฉ์ž๊ฐ€ ์‹์‚ฌ ์‚ฌ์ง„์„ ๊ธฐ๋กํ•˜๊ณ , ์œ ํŠœ๋ธŒ ๋งํฌ๋‚˜ ๊ฐ„๋‹จํ•œ ๋ ˆ์‹œํ”ผ๋ฅผ ํ•จ๊ป˜ ๊ณต์œ ํ•˜๋Š” ์‹์‚ฌ ๊ธฐ๋ก ์ปค๋ฎค๋‹ˆํ‹ฐ ์•ฑ์ž…๋‹ˆ๋‹ค.


๐Ÿ‘ฅ ๋ฉค๋ฒ„

๋ฆฌ๋ฒ„(์ด์žฌ์›) ์ฆ์œค(์†ก์Šน์œค) ๋ฐ์ด์ง€(์›์ฃผ์—ฐ) ๋น„์—”(์ด์€์ •)
์‚ฌ์ง„1 ์‚ฌ์ง„2 ์‚ฌ์ง„3 ์‚ฌ์ง„4
PL FE FE FE
GitHub GitHub GitHub GitHub

๐Ÿ“ฑ ์†Œ๊ฐœ

EatPic์€ ์‚ฌ์šฉ์ž๊ฐ€ ๋งค์ผ์˜ ์‹์‚ฌ๋ฅผ ์‚ฌ์ง„์œผ๋กœ ๊ธฐ๋กํ•˜๊ณ  ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋Š” ์•ฑ์ž…๋‹ˆ๋‹ค.
๋‹จ์ˆœํ•œ ์‹์‚ฌ ์ธ์ฆ์„ ๋„˜์–ด์„œ, ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ํ†ตํ•œ ๊ณต์œ , ๊ฐ์ • ๋ฐ˜์‘(์ด๋ชจ์ง€), ๊ทธ๋ฆฌ๊ณ  ์ฑŒ๋ฆฐ์ง€ํ˜• ์Šต๊ด€ ํ˜•์„ฑ ๊ธฐ๋Šฅ์„ ํ†ตํ•ด, ์‚ฌ์šฉ์ž๋“ค์ด ์ฆ๊ฒ๊ฒŒ ์‹๋‹จ์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ค๋‹ˆ๋‹ค.

EatPic์€ ์‹์‚ฌ๋ฅผ ๊ธฐ๋กํ•˜๋Š” ๋ชจ๋“  ์ˆœ๊ฐ„์— ์†Œ์†Œํ•œ ๋™๊ธฐ๋ฅผ ๋ถ€์—ฌํ•˜๊ณ , ํ•จ๊ป˜ํ•˜๋Š” ์ฆ๊ฑฐ์›€ ์†์—์„œ ๊ฑด๊ฐ•ํ•œ ๋ฃจํ‹ด์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.


๐Ÿ“† ํ”„๋กœ์ ํŠธ ๊ธฐ๊ฐ„

  • ์ „์ฒด ๊ธฐ๊ฐ„: 2025.06.23 - 2025.08.22
  • ๊ฐœ๋ฐœ ๊ธฐ๊ฐ„: 2025.07.12 - 2025.08.22

๐Ÿ”Ž ๊ธฐ์ˆ  ์Šคํƒ

Envrionment

Development

Communication


๐Ÿ“ฑ ํ™”๋ฉด ๊ตฌ์„ฑ

์‚ฌ์ง„ ๋„ฃ์–ด์ฃผ์„ธ์š” ์‚ฌ์ง„ ๋„ฃ์–ด์ฃผ์„ธ์š”

๐Ÿ—‚๏ธ ํด๋” ์ปจ๋ฒค์…˜

ํ•ด๋‹น ํด๋” ๊ตฌ์กฐ๋Š” ์ดˆ๊ธฐ ๊ธฐ์ค€์„ ์ œ์‹œํ•˜๋ฉฐ, ์ดํ›„ ํŒŒ์ผ์ด ์ถ”๊ฐ€๋˜๋”๋ผ๋„ README์— ๋ชจ๋‘ ๋ฐ˜์˜ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋‹จ, ์ƒˆ๋กœ์šด ํด๋”๊ฐ€ ์ƒ๊ธธ ๊ฒฝ์šฐ์—๋Š” ๊ตฌ์กฐ์— ํฌํ•จํ•˜์—ฌ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

EatPic-iOS/
โ”œโ”€โ”€ .github/
โ”œโ”€โ”€ Resources/
โ”‚   โ”œโ”€โ”€ Assets.xcassets/
โ”‚   โ”œโ”€โ”€ Colors.xcassets/
โ”‚   โ”œโ”€โ”€ Secrets.xcconfig
โ”‚   โ””โ”€โ”€ Fonts/
โ”‚       โ””โ”€โ”€ # ํ™•์ •๋˜๋ฉด ์ž‘์„ฑ                          
โ”‚
โ”œโ”€โ”€ Sources/
โ”‚   โ”œโ”€โ”€ App/
โ”‚   โ”‚   โ”œโ”€โ”€ AppDelegate.swift         # (ํ•„์š”์‹œ ์ถ”๊ฐ€) ์•ฑ ์ƒ๋ช…์ฃผ๊ธฐ
โ”‚   โ”‚   โ””โ”€โ”€ EatPicIOSApp.swift        # @main ์•ฑ ์ง„์ž…์ 
โ”‚   โ”‚
โ”‚   โ”œโ”€โ”€ Core/
โ”‚   โ”‚   โ”œโ”€โ”€ Network/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ NetworkService.swift         # MoyaProvider ๊ด€๋ฆฌ
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ TargetType/                  # Moya Target ์ •์˜
โ”‚   โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ AuthAPI.swift
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ DTO
โ”‚   โ”‚   โ”‚       โ”œโ”€โ”€ Request/                     # API ์š”์ฒญ ๋ชจ๋ธ(Codable)
โ”‚   โ”‚   โ”‚       โ”‚   โ””โ”€โ”€ LoginRequset.swift
โ”‚   โ”‚   โ”‚       โ””โ”€โ”€ Response/                    # API ์‘๋‹ต ๋ชจ๋ธ(Codable)
โ”‚   โ”‚   โ”‚           โ””โ”€โ”€ LoginResponse.swift
โ”‚   โ”‚   โ”‚
โ”‚   โ”‚   โ””โ”€โ”€ Environment/                   # ์•ฑ ํ™˜๊ฒฝ๊ณผ ๊ณผ๋ จ๋œ ์ „์ฒด ์„ค์ •(์˜์กด์„ฑ, ๋นŒ๋“œ ํ™˜๊ฒฝ, ํ”Œ๋ž˜๊ทธ ๋“ฑ)
โ”‚   โ”‚       โ””โ”€โ”€ DIConttainer.swift         # ์ „์—ญ ์˜์กด์„ฑ ์ฃผ์ž…์„ ์œ„ํ•œ ํ™˜๊ฒฝ ๊ตฌ์„ฑ
โ”‚   โ”‚
โ”‚   โ”œโ”€โ”€ Components/
โ”‚   โ”‚   โ””โ”€โ”€ Common/
โ”‚   โ”‚       โ”œโ”€โ”€ PrimaryButton.swift
โ”‚   โ”‚       โ””โ”€โ”€ RoundedTextField.swift
โ”‚   โ”‚
โ”‚   โ”œโ”€โ”€ Screens/    # ํ™”๋ฉด์— ๋งž์ถ”์–ด ์ถ”๊ฐ€ํ•˜๋ฉด ๋จ 
โ”‚   โ”‚   โ”œโ”€โ”€ Login/
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ LoginView.swift
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ LoginViewModel.swift
โ”‚   โ”‚   โ”‚   
โ”‚   โ”‚   โ””โ”€โ”€ Home/
โ”‚   โ”‚       โ”œโ”€โ”€ HomeView.swift
โ”‚   โ”‚       โ””โ”€โ”€ HomeViewModel.swift
โ”‚   โ”‚
โ”‚   โ”œโ”€โ”€ Models/   # ๋ชจ๋ธ ์ €์žฅ ์œ„์น˜
โ”‚   โ”‚   โ”œโ”€โ”€ LoginModel.swift
โ”‚   โ”‚   โ””โ”€โ”€  HomeModel.swift
โ”‚   โ”‚
โ”‚   โ””โ”€โ”€ Utilities/
โ”‚       โ”œโ”€โ”€ Extensions/
โ”‚       โ”‚   โ”œโ”€โ”€ Color+Extensions.swift
โ”‚       โ”‚   โ”œโ”€โ”€ Font+Extensions.swift
โ”‚       โ”‚   โ””โ”€โ”€ View+Extensions.swift
โ”‚       โ”œโ”€โ”€ Config/
โ”‚       โ”‚   โ””โ”€โ”€ Config.swift
โ”‚       โ”œโ”€โ”€ Constants/
โ”‚       โ”‚   โ””โ”€โ”€ UIConstants.swift
โ”‚       โ””โ”€โ”€ Preview/
โ”‚           โ””โ”€โ”€ DevicePreviewHelper.swift
โ”‚
โ”œโ”€โ”€ Tests/ 
โ”‚   โ”œโ”€โ”€ EatPicIOSTests.swift
โ”‚   โ””โ”€โ”€ CoreTests/          # ์ถ”ํ›„ ํ…Œ์ŠคํŠธ์ฝ”๋“œ ์ž‘์„ฑ์‹œ ์ถ”๊ฐ€
โ”‚
โ”œโ”€โ”€ mise.toml               # mise ํ™˜๊ฒฝ์„ค์ • ํŒŒ์ผ
โ”œโ”€โ”€ Project.swift           # Tuist ํ”„๋กœ์ ํŠธ ์ •์˜ ํŒŒ์ผ
โ”œโ”€โ”€ Tuist/                  # Tuist ๊ด€๋ จ ํŒจํ‚ค์ง€ ๋ฐ ์„ค์ •
โ”‚   โ”œโ”€โ”€ Package.resolved
โ”‚   โ””โ”€โ”€ Package.swift
โ”œโ”€โ”€ Tuist.swift             # Tuist ์ง„์ž…์  ์Šคํฌ๋ฆฝํŠธ
โ””โ”€โ”€ .gitignore              # Git ๋ฌด์‹œ ํŒŒ์ผ

๋ธŒ๋žœ์น˜ ์ „๋žต

  • Github-flow ์‚ฌ์šฉ
  • ๋ชจ๋“  ๋ธŒ๋žœ์น˜๋Š” main ๋ธŒ๋žœ์น˜์—์„œ ๋ถ„๊ธฐ

๐Ÿ”– ๋ธŒ๋žœ์น˜ ์ปจ๋ฒค์…˜

  • main - ๋ฉ”์ธ ๋ธŒ๋žœ์น˜
  • feat/xx - ๊ธฐ๋Šฅ ๋‹จ์œ„๋กœ ๋…๋ฆฝ์ ์ธ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์„ ์œ„ํ•ด ์ž‘์„ฑ
  • refactor/xx - ๊ฐœ๋ฐœ๋œ ๊ธฐ๋Šฅ์„ ๋ฆฌํŒฉํ† ๋ง ํ•˜๊ธฐ ์œ„ํ•ด ์ž‘์„ฑ
  • chore/xx - ๋นŒ๋“œ ์ž‘์—…, ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ € ์„ค์ • ๋“ฑ
  • design/xx - ๋””์ž์ธ ๋ณ€๊ฒฝ
  • fix/xx - ๋ฒ„๊ทธ ์ˆ˜์ •
  • test/xx - ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์—… ๋ฐ ์ˆ˜ํ–‰

๐Ÿ“‘ ์ปค๋ฐ‹ ์ปจ๋ฒค์…˜

๐Ÿ’ฌ ๊นƒ๋ชจ์ง€ ๊ฐ€์ด๋“œ

์•„์ด์ฝ˜ ์ฝ”๋“œ ์„ค๋ช… ์›๋ฌธ
๐Ÿ› bug ๋ฒ„๊ทธ ์ˆ˜์ • Fix a bug
โœจ sparkles ์ƒˆ ๊ธฐ๋Šฅ Introduce new features
๐Ÿ’„ lipstick UI/์Šคํƒ€์ผ ํŒŒ์ผ ์ถ”๊ฐ€/์ˆ˜์ • Add or update the UI and style files
โ™ป๏ธ recycle ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง Refactor code
โž• heavy_plus_sign ์˜์กด์„ฑ ์ถ”๊ฐ€ Add a dependency
๐Ÿ”€ twisted_rightwards_arrows ๋ธŒ๋žœ์น˜ ํ•ฉ๋ณ‘ Merge branches
๐Ÿ’ก bulb ์ฃผ์„ ์ถ”๊ฐ€/์ˆ˜์ • Add or update comments in source code
๐Ÿ”ฅ fire ์ฝ”๋“œ/ํŒŒ์ผ ์‚ญ์ œ Remove code or files
๐Ÿš‘ ambulance ๊ธด๊ธ‰ ์ˆ˜์ • Critical hotfix
๐ŸŽ‰ tada ํ”„๋กœ์ ํŠธ ์‹œ์ž‘ Begin a project
๐Ÿ”’ lock ๋ณด์•ˆ ์ด์Šˆ ์ˆ˜์ • Fix security issues
๐Ÿ”– bookmark ๋ฆด๋ฆฌ์ฆˆ/๋ฒ„์ „ ํƒœ๊ทธ Release / Version tags
๐Ÿ“ memo ๋ฌธ์„œ ์ถ”๊ฐ€/์ˆ˜์ • Add or update documentation
๐Ÿ”ง wrench ๊ตฌ์„ฑ ํŒŒ์ผ ์ถ”๊ฐ€/์‚ญ์ œ Add or update configuration files.
โšก๏ธ zap ์„ฑ๋Šฅ ๊ฐœ์„  Improve performance
๐ŸŽจ art ์ฝ”๋“œ ๊ตฌ์กฐ ๊ฐœ์„  Improve structure / format of the code
๐Ÿ“ฆ package ์ปดํŒŒ์ผ๋œ ํŒŒ์ผ ์ถ”๊ฐ€/์ˆ˜์ • Add or update compiled files
๐Ÿ‘ฝ alien ์™ธ๋ถ€ API ๋ณ€๊ฒฝ ๋ฐ˜์˜ Update code due to external API changes
๐Ÿšš truck ๋ฆฌ์†Œ์Šค ์ด๋™, ์ด๋ฆ„ ๋ณ€๊ฒฝ Move or rename resources
๐Ÿ™ˆ see_no_evil .gitignore ์ถ”๊ฐ€/์ˆ˜์ • Add or update a .gitignore file

๐Ÿท๏ธ ์ปค๋ฐ‹ ํƒœ๊ทธ ๊ฐ€์ด๋“œ

ํƒœ๊ทธ ์„ค๋ช…
feat ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ์ถ”๊ฐ€
fix ๋ฒ„๊ทธ ์ˆ˜์ •
refactor ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง (๊ธฐ๋Šฅ ๋ณ€๊ฒฝ ์—†์ด ๊ตฌ์กฐ ๊ฐœ์„ )
style ์ฝ”๋“œ ํฌ๋งทํŒ…, ์„ธ๋ฏธ์ฝœ๋ก  ๋ˆ„๋ฝ, ๋“ค์—ฌ์“ฐ๊ธฐ ์ˆ˜์ • ๋“ฑ
docs README, ๋ฌธ์„œ ์ˆ˜์ •
test ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ถ”๊ฐ€ ๋ฐ ์ˆ˜์ •
chore ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ € ์„ค์ •, ๋นŒ๋“œ ์„ค์ • ๋“ฑ ๊ธฐํƒ€ ์ž‘์—…
design UI, CSS, ๋ ˆ์ด์•„์›ƒ ๋“ฑ ๋””์ž์ธ ๊ด€๋ จ ์ˆ˜์ •
hotfix ์šด์˜ ์ค‘ ๊ธด๊ธ‰ ์ˆ˜์ •์ด ํ•„์š”ํ•œ ๋ฒ„๊ทธ ๋Œ€์‘
ci/cd ๋ฐฐํฌ ๊ด€๋ จ ์„ค์ •, ์›Œํฌํ”Œ๋กœ์šฐ ๊ตฌ์„ฑ ๋“ฑ

โœ… ์ปค๋ฐ‹ ์˜ˆ์‹œ ๋ชจ์Œ

๐ŸŽ‰ chore: ํ”„๋กœ์ ํŠธ ์ดˆ๊ธฐ ์„ธํŒ…
โœจ feat: ํ”„๋กœํ•„ ํ™”๋ฉด UI ๊ตฌํ˜„
๐Ÿ› fix: iOS 17์—์„œ ๋ฒ„ํŠผ ํด๋ฆญ ์˜ค๋ฅ˜ ์ˆ˜์ •
๐Ÿ’„ design: ๋กœ๊ทธ์ธ ํ™”๋ฉด ๋ ˆ์ด์•„์›ƒ ์กฐ์ •
๐Ÿ“ docs: README์— ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ ์ถ”๊ฐ€


๐Ÿ“ PR ์ปจ๋ฒค์…˜

PR ์‹œ, ํ…œํ”Œ๋ฆฟ์ด ๋“ฑ์žฅํ•ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ํ…œํ”Œ๋ฆฟ์—์„œ ์ž‘์„ฑํ•ด์•ผํ•  ๋ถ€๋ถ„์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  1. PR ์œ ํ˜• ์ž‘์„ฑ, ์–ด๋–ค ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์žˆ์—ˆ๋Š”์ง€ [] ๊ด„ํ˜ธ ์‚ฌ์ด์— x๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ์ฒดํฌํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•œ๋‹ค.
  2. ์ž‘์—… ๋‚ด์šฉ ์ž‘์„ฑ, ์ž‘์—… ๋‚ด์šฉ์— ๋Œ€ํ•ด ์ž์„ธํ•˜๊ฒŒ ์ž‘์„ฑ์„ ํ•œ๋‹ค.
  3. ์ถ”ํ›„ ์ง„ํ–‰ํ•  ์ž‘์—…, PR ์ดํ›„ ์ž‘์—…ํ•  ๋‚ด์šฉ์— ๋Œ€ํ•ด ์ž‘์„ฑํ•œ๋‹ค
  4. ๋ฆฌ๋ทฐ ํฌ์ธํŠธ, ๋ณธ์ธ PR์—์„œ ๊ผญ ํ™•์ธํ•ด์•ผ ํ•  ๋ถ€๋ถ„์„ ์ž‘์„ฑํ•œ๋‹ค.
  5. PR ํƒœ๊ทธ ์ข…๋ฅ˜, PR ์ œ๋ชฉ์˜ ํƒœ๊ทธ๋Š” ์•„๋ž˜ ํ˜•์‹์„ ๋”ฐ๋ฅธ๋‹ค.

๐ŸŒŸ ํƒœ๊ทธ ์ข…๋ฅ˜ (์ปค๋ฐ‹ ์ปจ๋ฒค์…˜๊ณผ ๋™์ผ)

ํƒœ๊ทธ ์„ค๋ช…
[Feat] ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ์ถ”๊ฐ€
[Fix] ๋ฒ„๊ทธ ์ˆ˜์ •
[Refactor] ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง (๊ธฐ๋Šฅ ๋ณ€๊ฒฝ ์—†์ด ๊ตฌ์กฐ ๊ฐœ์„ )
[Style] ์ฝ”๋“œ ํฌ๋งทํŒ…, ๋“ค์—ฌ์“ฐ๊ธฐ ์ˆ˜์ • ๋“ฑ
[Docs] ๋ฌธ์„œ ๊ด€๋ จ ์ˆ˜์ •
[Test] ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ถ”๊ฐ€ ๋˜๋Š” ์ˆ˜์ •
[Chore] ๋นŒ๋“œ/์„ค์ • ๊ด€๋ จ ์ž‘์—…
[Design] UI ๋””์ž์ธ ์ˆ˜์ •
[Hotfix] ์šด์˜ ์ค‘ ๊ธด๊ธ‰ ์ˆ˜์ •
[CI/CD] ๋ฐฐํฌ ๋ฐ ์›Œํฌํ”Œ๋กœ์šฐ ๊ด€๋ จ ์ž‘์—…

โœ… PR ์˜ˆ์‹œ ๋ชจ์Œ

๐ŸŽ‰ [Chore] ํ”„๋กœ์ ํŠธ ์ดˆ๊ธฐ ์„ธํŒ…
โœจ [Feat] ํ”„๋กœํ•„ ํ™”๋ฉด UI ๊ตฌํ˜„
๐Ÿ› [Fix] iOS 17์—์„œ ๋ฒ„ํŠผ ํด๋ฆญ ์˜ค๋ฅ˜ ์ˆ˜์ •
๐Ÿ’„ [Design] ๋กœ๊ทธ์ธ ํ™”๋ฉด ๋ ˆ์ด์•„์›ƒ ์กฐ์ •
๐Ÿ“ [Docs] README์— ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ ์ถ”๊ฐ€

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5

Languages