Skip to content

1aborInModeration/OneMoreMinute

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“± OneMoreMinute

image

μ•ŒλžŒ, μ„Έκ³„μ‹œκ°„, μŠ€ν†±μ›ŒμΉ˜, 타이머 κΈ°λŠ₯을 μ œκ³΅ν•˜λŠ” iOS μ•± ν”„λ‘œμ νŠΈ

πŸ“š Tech Stacks

πŸ‘₯ The Team

Name GitHub Roles Main Developments
ꢌ승용
Seung-Yong Kwon
@ericKwon95 MVVM Architecture Designer MainTabBarViewController
Alarm and Core Services
κΉ€ν˜•μ„
Hyeong-Seok Kim
@NeoSelf1 RxSwift Flow Manager TimerViewController
Code Convention Review
μž„μ„±μˆ˜
Seong-Soo Lim
@seongto UI Components Manager WorldTimeViewController
Utility and Helper Services
μž₯상경
Sang-Kyeong Jang
@Crois0509 CoreData Manager AlarmViewController
App UI and Icon Designs
황도일
Doyle Hwang
@DoyleHWorks GitHub/Docs Manager StopwatchViewController
Project Initialization

⏰ Project Scope

  • μ‹œμž‘μΌ: 2025/01/07 (ν™”)
  • μ’…λ£ŒμΌ: 2025/01/15 (수)

πŸ“‚ Folder Organization

OneMoreMinute/
β”œβ”€β”€ App/                  # μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ„€μ • 및 메타 데이터
β”‚   β”œβ”€β”€ AppDelegate       # μ•±μ˜ 생λͺ…μ£ΌκΈ° 및 μ΄ˆκΈ°ν™” 관리
β”‚   β”œβ”€β”€ Info.plist        # μ•±μ˜ μ„€μ • 정보
β”‚   β”œβ”€β”€ LaunchScreen      # μ•± μ‹€ν–‰ μ‹œ λ‘œλ”© ν™”λ©΄
β”‚   β”œβ”€β”€ OneMoreMinute.entitlements  # μ•± κΆŒν•œ 및 νŠΉμ • κΈ°λŠ₯ ν™œμ„±ν™” μ„€μ •
β”‚   β”œβ”€β”€ OneMoreMinute.xcdatamodeld  # Core Data λͺ¨λΈ
β”‚   └── SceneDelegate     # Scene 생λͺ…μ£ΌκΈ° 관리
β”œβ”€β”€ Resource/             # μ•±μ˜ Asset νŒŒμΌλ“€
└── Source/               # κΈ°λŠ₯별 μ• ν”Œλ¦¬μΌ€μ΄μ…˜ 둜직
    β”œβ”€β”€ Core/             # 곡톡 둜직 및 μ„œλΉ„μŠ€
    β”‚   β”œβ”€β”€ Extension/    # μ‹œμŠ€ν…œ 클래슀 ν™•μž₯
    β”‚   β”œβ”€β”€ Manager/      # 곡톡 κΈ°λŠ₯ 관리 (AlarmManager, TimeManager, RepositoryManager λ“±)
    β”‚   β”œβ”€β”€ Protocol/     # 곡톡 ν”„λ‘œν† μ½œ (CoreDataProtocol, ModalProtocol, ViewModelType)
    β”‚   β”œβ”€β”€ Theme/        # μ•±μ˜ ν…Œλ§ˆ μ •μ˜ (Colors, Fonts, Layouts)
    β”‚   └── Utility/      # 곡톡 μœ ν‹Έλ¦¬ν‹° (AppHelpers, HapticService, SceneLifeCycleObserver λ“±)
    β”œβ”€β”€ Feature/          # κΈ°λŠ₯별 ν™”λ©΄ 및 둜직
    β”‚   β”œβ”€β”€ Alarm/        # μ•ŒλžŒ κΈ°λŠ₯
    β”‚   β”œβ”€β”€ MainTab/      # 메인 νƒ­λ°” κΈ°λŠ₯
    β”‚   β”œβ”€β”€ Stopwatch/    # μŠ€ν†±μ›ŒμΉ˜ κΈ°λŠ₯
    β”‚   β”œβ”€β”€ Timer/        # 타이머 κΈ°λŠ₯
    β”‚   └── WorldTime/    # μ„Έκ³„μ‹œκ°„ κΈ°λŠ₯
    └── UIComponent/      # 곡톡 UI μ»΄ν¬λ„ŒνŠΈλ“€
OneMoreMinuteTests/       # λ‹¨μœ„ ν…ŒμŠ€νŠΈ 및 ν…ŒμŠ€νŠΈ μ½”λ“œ (TimeManagerTests)

πŸ–ΌοΈ Preview

Simulator Screen Recording - iPhone 16 Pro - 2025-01-15 at 14 09 41 Simulator Screen Recording - iPhone 16 Pro - 2025-01-15 at 14 10 45 Simulator Screen Recording - iPhone 16 Pro - 2025-01-15 at 14 11 10 Simulator Screen Recording - iPhone 16 Pro - 2025-01-15 at 14 12 31

🏷 Main Features

μ•ŒλžŒ κΈ°λŠ₯

  • μ‚¬μš©μžκ°€ μ›ν•˜λŠ” μ‹œκ°„μ— μ•ŒλžŒμ„ μ„€μ •ν•˜κ³  관리할 수 μžˆμŠ΅λ‹ˆλ‹€.
  • 반볡 μ•ŒλžŒ μ„€μ • κΈ°λŠ₯을 μ œκ³΅ν•©λ‹ˆλ‹€.

μ„Έκ³„μ‹œκ°„ κΈ°λŠ₯

  • λ‹€μ–‘ν•œ λ„μ‹œμ˜ ν˜„μž¬ μ‹œκ°„μ„ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.
  • μ‚¬μš©μžκ°€ 관심이 μžˆλŠ” λ„μ‹œλ₯Ό μΆ”κ°€ν•˜κ³  λͺ©λ‘μ„ 관리할 수 μžˆμŠ΅λ‹ˆλ‹€.

μŠ€ν†±μ›ŒμΉ˜ κΈ°λŠ₯

  • μ‹œκ°„ μΈ‘μ • μ‹œμž‘, μΌμ‹œμ •μ§€, 재개 및 μ΄ˆκΈ°ν™” κΈ°λŠ₯을 μ œκ³΅ν•©λ‹ˆλ‹€.
  • 랩 νƒ€μž„ μΈ‘μ • 및 기둝이 κ°€λŠ₯ν•˜κ³  베슀트 랩과 μ›ŒμŠ€νŠΈ λž©μ„ ν•œ λˆˆμ— λ³΄μ—¬μ€λ‹ˆλ‹€.

타이머 κΈ°λŠ₯

  • μ‚¬μš©μžκ°€ μ›ν•˜λŠ” μ‹œκ°„μœΌλ‘œ 타이머λ₯Ό μ„€μ •ν•˜κ³  μ‹œμž‘ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • 타이머 μ’…λ£Œ μ‹œ μ•Œλ¦Όμ„ μ œκ³΅ν•©λ‹ˆλ‹€.

✨ Considerations

MVVM μ•„ν‚€ν…μ²˜μ™€ RxSwift

  • MVVM μ•„ν‚€ν…μ²˜λ₯Ό μ±„νƒν•˜μ—¬ μ½”λ“œμ˜ λͺ¨λ“ˆν™”와 μœ μ§€ λ³΄μˆ˜μ„±μ„ ν–₯μƒμ‹œμΌ°μŠ΅λ‹ˆλ‹€.
  • RxSwiftλ₯Ό ν™œμš©ν•˜μ—¬ 비동기 데이터 흐름과 바인딩을 κ΅¬ν˜„ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

μž¬μ‚¬μš©μ„± 높은 개발

  • μ•± μ „λ°˜μ— 걸쳐 μΌκ΄€λœ λ””μžμΈμ„ μœ μ§€ν•˜κΈ° μœ„ν•΄ 곡용 ν…Œλ§ˆλ₯Ό μ •μ˜ν•˜κ³ , μž¬μ‚¬μš© κ°€λŠ₯ν•œ UI μ»΄ν¬λ„ŒνŠΈλ₯Ό λΆ„λ¦¬ν•˜μ˜€μŠ΅λ‹ˆλ‹€.
  • μœ ν‹Έλ¦¬ν‹°, λ§€λ‹ˆμ € 등을 μ½”μ–΄ μ„œλΉ„μŠ€λ‘œ λΆ„λ¦¬ν•˜μ—¬ κ΅¬ν˜„ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

CoreData & UserDefaults 관리

  • μ‚¬μš©μž 데이터와 섀정을 효율적으둜 μ €μž₯ν•˜κ³  κ΄€λ¦¬ν•˜κΈ° μœ„ν•΄ CoreData와 UserDefaultsλ₯Ό ν™œμš©ν•˜μ˜€μŠ΅λ‹ˆλ‹€.
  • μ•ŒλžŒκ³Ό μ„Έκ³„μ‹œκ°„ κΈ°λŠ₯은 CoreDataλ₯Ό μ‚¬μš©ν•˜κ³  μŠ€ν†±μ›ŒμΉ˜ κΈ°λŠ₯은 UserDefaultsλ₯Ό μ‚¬μš©ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

λ°°λ„ˆ μ•Œλ¦Ό κΈ°λŠ₯ 및 λ°±κ·ΈλΌμš΄λ“œ ν”Œλ‘œμš° κ΅¬ν˜„

  • μ•± λ‚΄μ—μ„œ μ€‘μš”ν•œ 정보λ₯Ό μ‚¬μš©μžμ—κ²Œ μ „λ‹¬ν•˜κΈ° μœ„ν•΄ λ°°λ„ˆ μ•Œλ¦Ό κΈ°λŠ₯을 κ΅¬ν˜„ν•˜μ˜€μŠ΅λ‹ˆλ‹€.
  • SceneDelegate의 Lifecycle을 톡해 μŠ€ν†±μ›ŒμΉ˜ λ“±μ˜ λ°±κ·ΈλΌμš΄λ“œ ν”Œλ‘œμš°λ₯Ό κ΅¬ν˜„ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

λ””λ°”μ΄μŠ€ λ¦¬μ†ŒμŠ€ 효율

  • μ„Έκ³„μ‹œκ°„ κΈ°λŠ₯을 μ™ΈλΆ€ APIλ₯Ό μ΄μš©ν•˜μ§€ μ•Šκ³  λ‚΄λΆ€ 둜직으둜 κ΅¬ν˜„ν•˜μ—¬ λ„€νŠΈμ›Œν¬ μ‚¬μš©μ„ μ΅œμ†Œν™”ν•˜μ˜€μŠ΅λ‹ˆλ‹€.
  • λ©”λͺ¨λ¦¬ λˆ„μˆ˜ λ°©μ§€λΏλ§Œ μ•„λ‹ˆλΌ λ©”λͺ¨λ¦¬ 효율적인 μ½”λ“œλ₯Ό μž‘μ„±ν•˜κΈ° μœ„ν•΄ μ§€μ†μ μœΌλ‘œ κ²€ν† ν•˜κ³  μ΅œμ ν™”ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

πŸ“¦ How to Install

  1. Clone this repository:
    git clone https://github.com/1aborInModeration/OneMoreMinute.git  

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages