Giter Site home page Giter Site logo

developeracademy-postech / mc2-team2-burningbuddy Goto Github PK

View Code? Open in Web Editor NEW
10.0 2.0 1.0 154.57 MB

๐Ÿ”ฅ๐Ÿฐ ๋ฒ„๋‹๋ฒ„๋”” ๋ฒ„๋‹๋ฒ„๋”” ๋“๊ทผ๋“๊ทผ ๐Ÿ’ช ๐Ÿฅ•

License: MIT License

Swift 100.00%
appledeveloperacademy ios swift swiftui

mc2-team2-burningbuddy's Introduction

MC2-Team2-BurningBuddy

BurningBuddy

๐Ÿฐ๐Ÿ”ฅ Burning Buddy ๐Ÿ”ฅ๐Ÿฐ

ํšŒ์˜ค๋‚˜(ํšŒ์›๋‹˜ ์˜ค๋Š˜์€ ๋‚˜์˜ค์‹ค๊ฑฐ์ฃ ?)ํŒ€์˜ ์†Œ์ค‘ํ•œ ์‚ฌ๋žŒ๋“ค์„ ์œ„ํ•œ ์•ฑ โค๏ธ

๐Ÿฐ About Burning Buddy

๐Ÿ“… ํ”„๋กœ์ ํŠธ ๊ธฐ๊ฐ„: 2023.04.10 - 2023.05.19

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

๐Ÿง‘โ€๐Ÿ’ป Authors

ํšŒ์›๋‹˜ ์˜ค๋Š˜ ๋‚˜์˜ค์‹ค๊ฑฐ์ฃ ~? (A.K.A ํšŒ์˜ค๋‚˜)

Role โ™ฅ๏ธ
  • West, Luna: NearByInteraction, MultiPeerConnectivity, Network, CoreData
  • Bazzi, Muho: View, CoreData
  • Jay: HealthKit, Animation
  • Yena: UI Design
West Jay Luna Bazzi Yena Muho

๐Ÿ“ฑ Screenshots

Onboarding Initial Setting Setting
1 แ„‚แ…ตแ†จแ„‚แ…ฆแ„‹แ…ตแ†ท:แ„แ…ขแ„…แ…ตแ†จแ„แ…ฅแ„‹แ…ตแ„…แ…ณแ†ท:แ„แ…กแ†ฏแ„…แ…ฉแ„…แ…ตแ„‰แ…ฅแ†ฏแ„Œแ…ฅแ†ผ แ„‰แ…ฆแ„แ…ตแ†ผ
Character Roadmap NI Interaction Workout Done
แ„‹แ…ตแ†ซแ„‘แ…ฉ แ„‹แ…ฎแ†ซแ„ƒแ…ฉแ†ผแ„Œแ…ฎแ†ผ แ„‹แ…ฎแ†ซแ„ƒแ…ฉแ†ผแ„‹แ…ชแ†ซแ„…แ…ญ


๐Ÿ›  Development Environment


โœจ Skills & Tech Stack

  • SwiftUI
  • Code base
  • Core Data
  • Nearby Interaction
  • Multipeer Connectivity
  • HealthKit

๐ŸŽ Library

import SwiftUI
import UIKit
import CoreData
import NearbyInteraction
import MultipeerConnectivity
import Network
import HealthKit

๐Ÿ—‚ Folder Structure

BurningBuddy
โ”œโ”€โ”€ Info.plist
โ”œโ”€โ”€ Model
โ”‚ย ย  โ””โ”€โ”€ CoreData
โ”‚ย ย   ย ย  โ”œโ”€โ”€ Bunny
โ”‚ย ย      โ””โ”€โ”€ User
โ”œโ”€โ”€ Resources
โ”‚ย ย  โ””โ”€โ”€ Assets
โ”œโ”€โ”€ Utils
โ”‚ย ย  โ””โ”€โ”€ NIUtils
โ”‚ย ย      โ””โ”€โ”€ MPCUtils
โ””โ”€โ”€ View
    โ”œโ”€โ”€ Component
    โ”œโ”€โ”€ LevelUp
    โ”œโ”€โ”€ Main
    โ”œโ”€โ”€ Onboarding
    โ”œโ”€โ”€ Partner
    โ””โ”€โ”€ Workout

๐Ÿ”€ Git branch & Git Flow

  1. Git Convention
  • [Hotfix] : issue๋‚˜, QA์—์„œ ๊ธ‰ํ•œ ๋ฒ„๊ทธ ์ˆ˜์ •์— ์‚ฌ์šฉ
  • [Fix] : ๋ฒ„๊ทธ, ์˜ค๋ฅ˜ ํ•ด๊ฒฐ
  • [Add] : Feat ์ด์™ธ์˜ ๋ถ€์ˆ˜์ ์ธ ์ฝ”๋“œ ์ถ”๊ฐ€, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ถ”๊ฐ€, ์ƒˆ๋กœ์šด ํŒŒ์ผ ์ƒ์„ฑ ์‹œ
  • [Style] : ์ฝ”๋“œ ํฌ๋งทํŒ…, ์„ธ๋ฏธ์ฝœ๋ก  ๋ˆ„๋ฝ, ์ฝ”๋“œ ๋ณ€๊ฒฝ์ด ์—†๋Š” ๊ฒฝ์šฐ
  • [Feat] : ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ๊ตฌํ˜„
  • [Del] : ์“ธ๋ชจ์—†๋Š” ์ฝ”๋“œ ์‚ญ์ œ
  • [Docs] : README๋‚˜ WIKI ๋“ฑ์˜ ๋ฌธ์„œ ๊ฐœ์ •
  • [Chore] : ์ฝ”๋“œ ์ˆ˜์ •, ๋‚ด๋ถ€ ํŒŒ์ผ ์ˆ˜์ •, ๋นŒ๋“œ ์—…๋ฌด ์ˆ˜์ •, ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ € ์ˆ˜์ •
  • [Correct] : ์ฃผ๋กœ ๋ฌธ๋ฒ•์˜ ์˜ค๋ฅ˜๋‚˜ ํƒ€์ž…์˜ ๋ณ€๊ฒฝ, ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋“ฑ์— ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • [Move] : ํ”„๋กœ์ ํŠธ ๋‚ด ํŒŒ์ผ์ด๋‚˜ ์ฝ”๋“œ์˜ ์ด๋™
  • [Rename] : ํŒŒ์ผ ์ด๋ฆ„ ๋ณ€๊ฒฝ์ด ์žˆ์„ ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • [Refactor] : ์ „๋ฉด ์ˆ˜์ •์ด ์žˆ์„ ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค
  • [Init] : Initial Commit
  1. Branch ์ „๋žต
  • mainย : ๊ฐœ๋ฐœ์ด ์™„๋ฃŒ๋œ ์‚ฐ์ถœ๋ฌผ์ด ์ €์žฅ๋  ๊ณต๊ฐ„
  • developย : feature ๋ธŒ๋žœ์น˜์—์„œ ๊ตฌํ˜„๋œ ๊ธฐ๋Šฅ๋“ค์ด merge๋  ๋ธŒ๋žœ์น˜
  • featureย : ๊ธฐ๋Šฅ์„ ๊ฐœ๋ฐœํ•˜๋Š” ๋ธŒ๋žœ์น˜, ์ด์Šˆ๋ณ„/์ž‘์—…๋ณ„๋กœ ๋ธŒ๋žœ์น˜๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ๊ธฐ๋Šฅ์„ ๊ฐœ๋ฐœํ•œ๋‹ค
  • releaseย : ๋ฆด๋ฆฌ์ฆˆ๋ฅผ ์ค€๋น„ํ•˜๋Š” ๋ธŒ๋žœ์น˜, ๋ฆด๋ฆฌ์ฆˆ ์ง์ „ QA ๊ธฐ๊ฐ„์— ์‚ฌ์šฉํ•œ๋‹ค
  • hotfixย : ๋ฒ„๊ทธ๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๋ธŒ๋žœ์น˜

๐Ÿ” License



mc2-team2-burningbuddy's People

Contributors

bokoo14 avatar dhkimy avatar hanyeonggyun avatar jay1261 avatar kpk0616 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

kyxxgsoo

mc2-team2-burningbuddy's Issues

[Hotfix] ContentView์—์„œ CoreData ๊ฐ’ ์—†์ด Readํ•˜๋Š” ๋ฌธ์ œ ํ•ด๊ฒฐ

๐Ÿ›  Issue

  • ContentView์—์„œ CoreData ๊ฐ’์ด ์—†๋Š” ์ƒํƒœ์—์„œ readํ•˜๋Š” ๋ถ€๋ถ„์ด ์žˆ์–ด NSRangeError๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
  • ์ฝ”์–ด๋ฐ์ดํ„ฐ ๊ฐ’์ด ์ €์žฅ๋˜์–ด์žˆ๋Š” ์ƒํƒœ์—์„œ ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ๋ฅผ ์‹คํ–‰์‹œํ‚ค๋‹ค๋ณด๋‹ˆ ์•ฑ์ด ํ„ฐ์ง€๋Š” ๋ฌธ์ œ๋ฅผ ์ธ์ง€ํ•˜์ง€ ๋ชปํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.
image

๐Ÿ“ To-do

  • CoreData ๊ฐ’ ์—†์ด Readํ•˜๋Š” ๋ฌธ์ œ ํ•ด๊ฒฐ

[Chore] CoreData์— ์žˆ๋Š” user์˜ ๊ฐ’ ์ค‘๋ณต ๋ฐ์ดํ„ฐ ์ œ๊ฑฐํ•˜๊ธฐ

๐Ÿ›  Issue

UserSettings์— ์žˆ๋Š” user์— ๊ด€๋ จ๋œ ๊ฐ’๋“ค ์ค‘ CoreData์— ์žˆ๋Š” ๊ฐ’๋“ค๊ณผ ์ค‘๋ณต๋˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  ๋ณ€์ˆ˜๋“ค์„ ์ˆ˜์ •ํ•˜๋Š” ์ž‘์—…์ž…๋‹ˆ๋‹ค

๐Ÿ“ To-do

  • todayCalories๊ด€๋ จ ๋ฐ์ดํ„ฐ ์ˆ˜์ •
  • todayWorkoutHour๊ด€๋ จ ๋ฐ์ดํ„ฐ ์ˆ˜์ •

[Refactor] settings ๋ณ€์ˆ˜ ์‚ญ์ œ, ๋ฐ์ดํ„ฐ ํ๋ฆ„ ํ†ต์ผ

๐Ÿ›  Issue

settings ๋ณ€์ˆ˜๋ฅผ ์‚ญ์ œํ•˜๊ณ , Model์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š” ๋ชจ๋“  View์— ์ถ”๊ฐ€ํ•˜์—ฌ
์•ฑ ์ „์ฒด ๋กœ์ง์„ ํ†ต์ผํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • settings ๋ณ€์ˆ˜ ์‚ญ์ œ, CoreData ๋ชจ๋ธ ์‹ฑ๊ธ€ํ„ด ํŒจํ„ด ์ ์šฉ
  • ๋ชจ๋“  View ๋ณ€์ˆ˜ model์—์„œ ๋ฐ›์•„์“ฐ๋Š” ํ˜•ํƒœ๋กœ ๋ณ€๊ฒฝ

[Feat] Issue ์˜ˆ์‹œ

๐Ÿ›  Issue

์ด์Šˆ ์ƒ์„ฑ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

  1. ํƒ€์ดํ‹€์—๋Š” [์ด์Šˆํƒœ๊ทธ] ์ด์Šˆ ๋‚ด์šฉ ์„ ์ ์–ด์ค๋‹ˆ๋‹ค !
  2. ์šฐ์ธก์— ์žˆ๋Š” Assignees๋ฅผ ๋ณธ์ธ์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ท !
  3. ์ด์Šˆํƒœ๊ทธ, ๋ณธ์ธ ์ด๋ฆ„ ๋ผ๋ฒจ์„ ๋‹ฌ์•„์ค๋‹ˆ๋‹ค !

๐Ÿ“ To-do

  • ์—ฌ๊ธฐ์—๋Š” to-do๋ฅผ ์ ์–ด์ฃผ๋ฉด ๋ฉ๋‹ˆ๋‹ค ~!

์•„์ž์•„์ž MC2 ํŒŒ์ดํŒ… !! ๐Ÿ”ฅ

[Feat] ์บ๋ฆญํ„ฐ ์ด๋ฆ„, ๋‹‰๋„ค์ž„ ์žฌ์„ค์ • ๊ธฐ๋Šฅ ์ถ”๊ฐ€

๐Ÿ›  Issue

์บ๋ฆญํ„ฐ ์ด๋ฆ„, ์‚ฌ๋žŒ ์ด๋ฆ„ Update ๊ฐ€๋Šฅํ•˜๋„๋ก ๋ณ€๊ฒฝ

๐Ÿ“ To-do

  • SettingView ์ƒ๋‹จ ์‚ฌ๋žŒ ์ด๋ฆ„, ์บ๋ฆญํ„ฐ ์ด๋ฆ„์žˆ๋Š” ์„น์…˜ ๋””์ž์ธ ๋ณ€๊ฒฝ
  • ๋‹‰๋„ค์ž„ ๋ณ€๊ฒฝ ๋ทฐ, ๋ฐ์ดํ„ฐ ์—…๋ฐ์ดํŠธ ๋กœ์ง ๋ณ€๊ฒฝ
  • ์บ๋ฆญํ„ฐ ์ด๋ฆ„ ๋ณ€๊ฒฝ ๋ทฐ, ๋ฐ์ดํ„ฐ ์—…๋ฐ์ดํŠธ ๋กœ์ง ๋ณ€๊ฒฝ
  • CoreData ์ดˆ๊ธฐํ™” ์‹œ ์˜ค๋ฅ˜ ํ•ด๊ฒฐ
  • CoreData update() ํ•จ์ˆ˜ ์ถ”๊ฐ€ ํ›„ ์ €์žฅ ๋ฌธ์ œ ํ•ด๊ฒฐ

[Feat] ๋ฉ”์ธ ๋ทฐ ํฌ๊ธฐ ์กฐ์ ˆ ๋ฐ ๋ฒ„ํŠผ ํฌ๊ธฐ๋ฅผ ๋น„๋กฏํ•œ ์ด๋ฏธ์ง€ ํฌ๊ธฐ ์กฐ์ ˆ

๐Ÿ›  Issue

1.๋ฉ”์ธ๋ทฐ ์˜ค๋Š˜์˜ ์šด๋™๋Ÿ‰ ๋ทฐ ํฌ๊ธฐ ์ค„์ด๊ธฐ
2. ์šด๋™ ๋ชฉํ‘œ๋Ÿ‰ ์ฑ„์šฐ ๋ชปํ–ˆ์„ ์‹œ ๋ชจ๋‹ฌ๋ทฐ ๋ฒ„ํŠผ ๊ฐ„๊ฒฉ ์กฐ์ ˆ
3. ํˆฌ๋ฒ„ํŠผ ์ปดํฌ๋„ŒํŠธ ์ƒ์„ฑ ํ›„ radius ๊ฐ’ 8๋กœ ๋ณ€๊ฒฝ
4. ์†๋ฐ”๋‹ฅ ์ด๋ฏธ์ง€ ๋ณ€๊ฒฝ
5. ํŒŒํŠธ๋„ˆ ์ฐพ๊ธฐ ํ™”๋ฉด ๋ฒ„ํŠผ ๋‘๊ฐœ ๊ฐ„๊ฒฉ ์กฐ์ ˆ## ๐Ÿ“ To-do

  • 1.๋ฉ”์ธ๋ทฐ ์˜ค๋Š˜์˜ ์šด๋™๋Ÿ‰ ๋ทฐ ํฌ๊ธฐ ์ค„์ด๊ธฐ
  • 2. ์šด๋™ ๋ชฉํ‘œ๋Ÿ‰ ์ฑ„์šฐ ๋ชปํ–ˆ์„ ์‹œ ๋ชจ๋‹ฌ๋ทฐ ๋ฒ„ํŠผ ๊ฐ„๊ฒฉ ์กฐ์ ˆ
  • 3. ํˆฌ๋ฒ„ํŠผ ์ปดํฌ๋„ŒํŠธ ์ƒ์„ฑ ํ›„ radius ๊ฐ’ 8๋กœ ๋ณ€๊ฒฝ
  • 4. ์†๋ฐ”๋‹ฅ ์ด๋ฏธ์ง€ ๋ณ€๊ฒฝ
  • 5. ํŒŒํŠธ๋„ˆ ์ฐพ๊ธฐ ํ™”๋ฉด ๋ฒ„ํŠผ ๋‘๊ฐœ ๊ฐ„๊ฒฉ ์กฐ์ ˆ

[Feat] View ํ™”๋ฉด ์™„๋ฒฝ ์—ฐ๊ฒฐ

๐Ÿ›  Issue

์™„๋ฒฝํ•˜์ง€ ์•Š์•˜๋˜ ํ™”๋ฉด ์—ฐ๊ฒฐ์„ ํ•ฉ๋‹ˆ๋‹ค.
ํ˜„์žฌ main ๋ธŒ๋žœ์น˜์— ์žˆ๋Š” ๋ทฐ๋งŒ ๊ฐ€์ง€๊ณ  ์ž‘์—…ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • UserDefalut ๋‹‰๋„ค์ž„ ๋“ฑ ์ €์žฅ ํ›„ ๋ทฐ ์ „ํ™˜์— ํ™œ์šฉ
  • ์กฐ๊ฑด์— ๋”ฐ๋ฅธ ์šด๋™ ํ™”๋ฉด์—์„œ ๋ทฐ ์ „ํ™˜, ๋ชจ๋‹ฌ ํŒ์—… ๊ตฌํ˜„

Issue #5

๐Ÿ›  Issue

Feature/#2์— ๋Œ€ํ•œ Issue์ž…๋‹ˆ๋‹ค.
5์›” 4์ผ ์ถ”๊ฐ€ ๋…ผ์˜ ํ›„ ํ•„์š” ๋ทฐ ํ™•์ •์— ๋”ฐ๋ฅธ ์ถ”๊ฐ€ ๋ทฐ ์ž‘์—…์ž…๋‹ˆ๋‹ค.
ํ•„์š”ํ•œ ๋ทฐ ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๊ณ , ๋‚ด๋ถ€ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋ฐฐ์น˜ํ•˜๋Š” ์ž‘์—…์„ ํ•ฉ๋‹ˆ๋‹ค.
UserDefalut๋ฅผ ํ™œ์šฉํ•œ ๋ฐ์ดํ„ฐ ์ €์žฅ ์ž‘์—…๊ณผ ๊ทธ์— ๋”ฐ๋ฅธ ๋ทฐ ์—ฐ๊ฒฐ ์ž‘์—…์€ ๋‹ค์Œ Feature ์ž‘์—…์—์„œ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • ๋ชฉํ‘œ ์นผ๋กœ๋ฆฌ ์„ค์ • ๋ทฐ ๋ถ„ํ• 
  • ์˜จ๋ณด๋”ฉ ํŽ˜์ด์ง€ ์ƒ์„ฑ
  • ์˜จ๋ณด๋”ฉ ํŽ˜์ด์ง€ ์—ฐ๊ฒฐ ์™„๋ฃŒ
  • ๋ฐœ๊ฒฌ๋œ ํŒŒํŠธ๋„ˆ๊ฐ€ ์—†์–ด์š” ๋ชจ๋‹ฌ ์ƒ์„ฑ
  • ํŒŒํŠธ๋„ˆ๊ฐ€ ์šด๋™ ์ค‘์ผ ๋•Œ ๋œจ๋Š” ๋ชจ๋‹ฌ ์ƒ์„ฑ
  • ํ•˜๋ฃจ ๋ชฉํ‘œ์น˜๋ฅผ ์ฑ„์šฐ์ง€ ๋ชปํ–ˆ๋‹ค๋Š” ๋ชจ๋‹ฌ ์ƒ์„ฑ
  • ๋ชฉํ‘œ ๋‹ฌ์„ฑํ™”๋ฉด, ๋ฏธ๋‹ฌ์„ฑ ํ™”๋ฉด ์ƒ์„ฑ
  • ์ง„ํ™”ํ™”๋ฉด ์ƒ์„ฑ
  • ๋‚ด์ •๋ณด ํ™”๋ฉด ์ƒ์„ฑ
  • ์ง„ํ™” ํŠธ๋ฆฌ ํ™”๋ฉด ์ƒ์„ฑ

[Feat] ์šด๋™ ์ข…๋ฃŒํ•˜๊ธฐ ๋กœ์ง ์ถ”๊ฐ€

๐Ÿ›  Issue

์šด๋™ ์ข…๋ฃŒํ•˜๊ธฐ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๊ณ , ํ˜„์žฌ ๋ณธ์ธ์˜ ์šด๋™๋Ÿ‰์ด ๋ชฉํ‘œ์น˜๋ฅผ ๋„˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜๊ณ , true/false์— ๋”ฐ๋ฅธ ๋ชจ๋‹ฌ ๋„˜์–ด๊ฐ€๋Š” ๋กœ์ง

๐Ÿ“ To-do

  • ์นผ๋กœ๋ฆฌ ๋ชฉํ‘œ์น˜ ์ฑ„์› ๋Š”์ง€ ํ™•์ธํ•˜๊ณ , ๋ชป ์ฑ„์› ์œผ๋ฉด ๋ชจ๋‹ฌ์ฐฝ ๋œจ๊ฒŒ ํ•˜๊ธฐ
  • ์ฑ„์› ์œผ๋ฉด ์—ฐ๊ฒฐ๋ทฐ๋กœ ๋„˜์–ด๊ฐ€๊ฒŒ ํ•˜๊ธฐ

[Chore] NI, MPC ์ฝ”๋“œ ์ •๋ฆฌ

๐Ÿ›  Issue

  • ๋‚ด ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•œ CoreData ์‚ฌ์šฉ.
  • ๋‚ด ์ฃผ๋ณ€ ๋ฒ„๋””๋ฅผ ํ™•์ธํ•˜๊ณ  ์šด๋™ ๋ฐ์ดํ„ฐ๋ฅผ ๊ณต์œ ํ•˜๊ธฐ ์œ„ํ•ด Nearby Interaction, Multipeer Connectivity๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.
  • ๋‚˜์˜ ์šด๋™ ์ •๋ณด๋ฅผ HealthKit์—์„œ ๊ฐ€์ ธ์™€์•ผ ํ•œ๋‹ค.
  • NI, MPC๋ฅผ ์œ„ํ•œ ์ฝ”๋“œ ์ˆ˜์ • ์ž‘์—… ํ•„์š”

๐Ÿ“ To-do

  • NI, MPC ๋ถˆํ•„์š”ํ•œ ์ฝ”๋“œ ์‚ญ์ œ ๋ฐ ํ•„์š”ํ•œ ์ฝ”๋“œ ์ถ”๊ฐ€

[Feat] SettingView

๐Ÿ›  Issue

Setting๋ทฐ๋ฅผ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • Setting๋ทฐ ์™„์„ฑ
  • ๋ฉ”์ธ๋ทฐ์—์„œ Setting๋ทฐ๋กœ ์—ฐ๊ฒฐ

[Hotfix] ์—์…‹ ์ด๋ฏธ์ง€ ๋ˆ„๋ฝ

๐Ÿ›  Issue

์—์…‹ ์ด๋ฏธ์ง€๋ฅผ ํ•œ๊ธ€๋กœ ํ–ˆ์„ ๋•Œ, ์ด๋ฏธ์ง€๊ฐ€ ์ œ๋Œ€๋กœ ์˜ฌ๋ผ๊ฐ€์ง€ ์•Š์•„ ๋ˆ„๋ฝ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • ์—์…‹ ํ•œ๊ธ€ ์ด๋ฆ„ ์˜์–ด๋กœ ๋ณ€๊ฒฝ ํ›„ ํ‘ธ์‰ฌ

[Refactor] ๋ณ€์ˆ˜ ์ˆ˜์ •

๐Ÿ›  Issue

UserSettings
class UserSettings: ObservableObject {
@published var showOnboarding: Bool = true
@published var pageNum: Int = 0
@published var characterName: String = "์บ๋ฆญํ„ฐ ์ด๋ฆ„"
@published var level: Int16 = 1
@published var nickName: String = "์‚ฌ๋žŒ ์ด๋ฆ„"
@published var totalDumbbell: Int16 = 0
@published var goalCalories: Int16 = 0
var isDoneTogetherWorkout: Bool = false // ๋‘˜ ๋‹ค ์šด๋™์„ ํ–ˆ๋Š”์ง€ check
var workoutData = WorkoutData() // published๋กœ ํ•ด์•ผ๋  ์ˆ˜๋„ ์žˆ์Œ, HealthKit์—์„œ ๊ฐ€์ ธ์˜จ ์šด๋™ ๋ฐ์ดํ„ฐ
}

UserDefaults
UserDefaults.standard.bool(forKey: "showOnboarding") // ์˜จ๋ณด๋”ฉ์ด ๋ณด์ผ์ง€ ๋ง์ง€
UserDefaults.standard.bool(forKey: "isDoneWorkout") // ๋‚ด๊ฐ€ ์šด๋™ ๋ชฉํ‘œ๋ฅผ ๋‹ฌ์„ฑํ–ˆ๋Š”์ง€ ์—ฌ๋ถ€
UserDefaults.standard.bool(forKey: "isWorkouting") // ๋‚ด๊ฐ€ ์šด๋™์„ ํ•˜๊ณ  ์žˆ๋Š”์ง€ ์—ฌ๋ถ€
UserDefaults.standard.string(forKey: "partnerID") // ๋‚ด๊ฐ€ ๊ฐ€์žฅ ์ตœ๊ทผ์— ์—ฐ๊ฒฐํ•œ ํŒŒํŠธ๋„ˆ์˜ ์•„์ด๋””
UserDefaults.standard.object(forKey: lastLaunchDateKey) // ๋‚ด๊ฐ€ ๊ฐ€์žฅ ์ตœ๊ทผ์— ์–ดํ”Œ์„ ์ผ  ์‹œ๊ฐ„

CoreData
Bunny
แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2023-05-14 แ„‹แ…ฉแ„’แ…ฎ 4 22 45
User
แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2023-05-14 แ„‹แ…ฉแ„’แ…ฎ 4 22 20

์ด ๊ฐ’๋“ค ์ค‘ ์ค‘๋ณต๋˜๋Š” ๊ฐ’์„ ์ œ๊ฑฐํ•˜๊ณ , CoreData๋กœ ๋ฐ”๊ฟ”์ฃผ๋Š” ์ž‘์—…์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • [ ]

[Hotfix] ์šด๋™๋ฐ์ดํ„ฐ ๊ด€๋ จ ์ˆ˜์ •

๐Ÿ›  Issue

  • ์šด๋™ ๋ฐ์ดํ„ฐ ์ œ๋Œ€๋กœ ๋ถˆ๋Ÿฌ์˜ค์ง€ ๋ชปํ•ด (ํ˜น์€ ์ œ๋Œ€๋กœ ์ €์žฅ๋˜์ง€ ์•Š์•„) ๋ชจ๋‹ฌ์ด ๋œธ
  • ํ™ˆ ํ™”๋ฉด์—์„œ ์šด๋™ ์นผ๋กœ๋ฆฌ ๋ˆ„์ ๋˜์ง€ ์•Š์Œ (์šด๋™๋ฐ์ดํ„ฐ ๋ถˆ๋Ÿฌ์˜ค๋ฉด ํ•ด๊ฒฐ๋˜๋Š” ๋ฌธ์ œ์ธ์ง€ ํ™•์‹ค์น˜ ์•Š์Œ)

๐Ÿ“ To-do

  • ํ™ˆ ํ™”๋ฉด ์šด๋™์‹œ๊ฐ„ 00h 00m ์œผ๋กœ ๋ณ€๊ฒฝํ•˜๊ธฐ

[Feat] ๋ทฐ ์ž‘์—… ์™„๋ฃŒ

๐Ÿ›  Issue

๋ทฐ ์ž‘์—…์„ ์ง„ํ–‰์ค‘์ž…๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • ๋ทฐ ์—ฐ๊ฒฐ, ์ธํ„ฐ๋ ‰์…˜ settings ๋ณ€์ˆ˜์— ๋”ฐ๋ผ ๋ณ€ํ•˜๋Š” ๊ฒƒ ๊ตฌํ˜„

[Feature] ๋ ˆ๋ฒจ์— ๋”ฐ๋ฅธ ์บ๋ฆญํ„ฐ ๋ฐ ์ง„ํ™” ๋กœ๋“œ๋งต ์ด๋ฏธ์ง€ ๋ณ€ํ™” + ๊นจ์ง€๋Š” ์ด๋ฏธ์ง€ 2X, 3X ์ถ”๊ฐ€

๐Ÿ›  Issue

  1. ์ด๋ฏธ์ง€ ์ถ”๊ฐ€: Asset์— ๊นจ์ง€๋Š” ์ด๋ฏธ์ง€ํŒŒ์ผ๋“ค + ๋ฉ”์ธ๋ทฐ์— ์‚ฌ์šฉ๋  ๋ฒ„๋‹ˆ ์ด๋ฏธ์ง€ + ์ง„ํ™” ๋กœ๋“œ๋งต์— ์‚ฌ์šฉ๋  ๋กœ๋“œ๋งต ์ด๋ฏธ์ง€ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
  2. ๋ฉ”์ธ๋ทฐ, ์ง„ํ™” ๋กœ๋“œ๋งต๋ทฐ ๋ ˆ๋ฒจ์— ๋”ฐ๋ฅธ ์ด๋ฏธ์ง€ ๋ณ€ํ™” ์ฝ”๋“œ ์ถ”๊ฐ€ ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • ์ด๋ฏธ์ง€ ์ถ”๊ฐ€
  • ๋ ˆ๋ฒจ์— ๋”ฐ๋ฅธ ๋ฉ”์ธ๋ทฐ ์ด๋ฏธ์ง€ ๋ณ€ํ™”
  • ๋ ˆ๋ฒจ์— ๋”ฐ๋ฅธ ์ง„ํ™” ๋กœ๋“œ๋งต๋ทฐ ๋ณ€ํ™”

[Fix] EnvironmentObject ๋ฌธ์ œ ํ•ด๊ฒฐ

๐Ÿ›  Issue

EnvironmentObject ๋ฌธ์ œ์ธ ๊ฒƒ ๊ฐ™์€ ๋ทฐ ๋„๋ฅด๋งˆ๋ฌด ๋ฌธ์ œํ•ด๊ฒฐ์„ ์œ„ํ•œ ์ด์Šˆ ์ž…๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • todo!

[Fix] ์šด๋™์ข…๋ฃŒ ํ›„ NI ํ•œ ๋’ค ๋ชจ๋‹ฌ๋ทฐ๊ฐ€ ์ œ๋Œ€๋กœ ๋œจ์ง€ ์•Š๋Š” ๋ฌธ์ œ ํ•ด๊ฒฐ

๐Ÿ›  Issue

์šด๋™ ์ข…๋ฃŒ ํ›„, ํŒŒํŠธ๋„ˆ์™€ ์—ฐ๊ฒฐํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ๊ตํ™˜ํ•œ ๋’ค ํŒŒํŠธ๋„ˆ์˜ ๋ชฉํ‘œ๋‹ฌ์„ฑ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•˜๊ณ  ๋ชจ๋‹ฌ / ๋‚ด๋น„๊ฒŒ์ด์…˜๋ทฐ๋ฅผ ๋„์šฐ๋Š” ๋กœ์ง์„ ๊ตฌํ˜„ํ•ด๋†“์•˜๋Š”๋ฐ ์ด ๋กœ์ง์ด ์ œ๋Œ€๋กœ ๋™์ž‘ํ•˜์ง€ ์•Š๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
๋ฐ์ดํ„ฐ ํ†ต์‹ ์ด ์ด๋ค„์ง€๋Š” ๋ถ€๋ถ„์—์„œ ์˜ค๋ฅ˜๊ฐ€ ๋‚˜๋Š”๊ฑด์ง€, ๋ชจ๋‹ฌ์„ ๋„์šฐ๋Š” ๋กœ์ง์—์„œ ์˜ค๋ฅ˜๊ฐ€ ๋‚˜๋Š”๊ฑด์ง€ ๋ถˆํ™•์‹คํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • ์˜ค๋ฅ˜ ํŒŒ์•… - ํŒŒํŠธ๋„ˆ๊ฐ€ ์šด๋™์„ ์™„๋ฃŒํ•˜์ง€ ์•Š์•˜์„๋•Œ๋Š” "ํŒŒํŠธ๋„ˆ๊ฐ€ ์•„์ง ์šด๋™ ์ค‘์ด์—์š”" ์ •์ƒ ์ž‘๋™, ํŒŒํŠธ๋„ˆ๊ฐ€ ๋ชฉํ‘œ ๋‹ฌ์„ฑ์„ ํ–ˆ์„๋•Œ๋„ "ํŒŒํŠธ๋„ˆ๊ฐ€ ์•„์ง ์šด๋™ ์ค‘์ด์—์š”" ๋ชจ๋‹ฌ์ด ๋„์›Œ์ง
  • ์˜ค๋ฅ˜: NISession์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ Tranํ• ๋•Œ ๋‚ด๊ฐ€ ๋ชฉํ‘œ๋ฅผ ๋‹ฌ์„ฑํ–ˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ์ฃผ๊ณ ๋ฐ›์ง€ ์•Š์•˜์Œ, ๋‚˜์™€ ์ƒ๋Œ€๋ฐฉ ๋ชจ๋‘๊ฐ€ ์šด๋™์„ ์™„๋ฃŒํ–ˆ๋Š”์ง€๋ฅผ checkํ•˜๋Š” ๋กœ์ง์ด ์ž˜๋ชป๋จ
  • ์˜ค๋ฅ˜ ํ•ด๊ฒฐ: NISessionManager์˜ ๋ฐ์ดํ„ฐ ํ†ต์‹ , settings.isDoneTogetherWorkout๋ณ€์ˆ˜ ๋กœ์ง ํ•ด๊ฒฐ

[Feat] NI, MPC UI์— ์—ฐ๊ฒฐ

๐Ÿ›  Issue

  • ๋‚ด ์ฃผ๋ณ€ ๋ฒ„๋””๋ฅผ ํ™•์ธํ•˜๊ณ  ์šด๋™ ๋ฐ์ดํ„ฐ๋ฅผ ๊ณต์œ ํ•˜๊ธฐ ์œ„ํ•ด Nearby Interaction, Multipeer Connectivity๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.
  • ๋‚˜์˜ ์šด๋™ ์ •๋ณด๋ฅผ HealthKit์—์„œ ๊ฐ€์ ธ์™€์•ผ ํ•œ๋‹ค.
  • ์ž์ž˜ํ•œ ์ปดํฌ๋„ŒํŠธ UI ์ˆ˜์ •, ๋ทฐ ๊ฐ„ ์—ฐ๊ฒฐ์„ ํ•œ๋‹ค.

๐Ÿ“ To-do

  • ํŒŒํŠธ๋„ˆ ์ฐพ๊ธฐ โ†’ Modal, Alert๋„์šฐ๊ธฐ (Nearby Interaction)
  • ์šด๋™์ค‘, ์œ ์ € ์šด๋™ ์™„๋ฃŒ โ†’ ๋ชจ๋‹ฌ ๋„์šฐ๊ธฐ (HealthKit, CoreData)
  • ์šด๋™์ด ๋œ ๋๋‚ฌ์„ ๋•Œ ํŒ์—…๋˜๋Š” ๋ชจ๋‹ฌ UI ์ˆ˜์ •, ๋‹ค๋ฅธ ๋ทฐ์™€ ์—ฐ๊ฒฐ
  • [ ]

[Feat] ์กฐ๊ฑด์— ๋”ฐ๋ผ ์˜จ๋ณด๋”ฉ ๋„์šฐ๊ธฐ, CoreData๋ฅผ UI์— ์—ฐ๊ฒฐ

๐Ÿ›  Issue

  • ๋‚ด ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•œ CoreData ์‚ฌ์šฉ.
  • UserDefault ์‚ฌ์šฉํ•ด ์กฐ๊ฑด์— ๋”ฐ๋ผ ์˜จ๋ณด๋”ฉ ๋„์šฐ๊ธฐ.

๐Ÿ“ To-do

  • ์˜จ๋ณด๋”ฉ โ†’ ๋‹‰๋„ค์ž„, ์บ๋ฆญํ„ฐ ์ด๋ฆ„, ์˜ค๋Š˜์˜ ์นผ๋กœ๋ฆฌ, ์˜ค๋Š˜์˜ ์šด๋™ ์‹œ๊ฐ„, ์ด ํš๋“ํ•œ ๋ค๋ฐธ์ˆ˜ (CoreData์— ์ €์žฅ)
  • UserDefault ์‚ฌ์šฉ

[Feat] HealthKit ์—ฐ๋™

๐Ÿ›  Issue

ํ—ฌ์Šคํ‚ท ๊ด€๋ จ ๊ธฐ๋Šฅ ์ถ”๊ฐ€

๐Ÿ“ To-do

  • ์šด๋™ ์‹œ์ž‘์‹œ๊ฐ„ ๊ธฐ๋ก
  • ์šด๋™ ๋ฐ์ดํ„ฐ fetch

[Feat] 1์ธ ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ

๐Ÿ›  Issue

๋ฒ„๋‹๋ฒ„๋””์˜ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์ธ 1์ธ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค.
์œ ์ €๊ฐ€ ํ˜ผ์ž์„œ๋„ ์•ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฒ„๋””๋ฅผ ํ‚ค์šธ ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • ๋ฉ”์ธ ํŽ˜์ด์ง€์—์„œ 1์ธ๊ธฐ๋Šฅ, 2์ธ ๊ธฐ๋Šฅ ์„ ํƒํ•˜๊ธฐ ๋ทฐ
  • ๋ฉ”์ธ ํŽ˜์ด์ง€์—์„œ 1์ธ๊ธฐ๋Šฅ, 2์ธ ๊ธฐ๋Šฅ ์„ ํƒํ•˜๋„๋ก ๋ถ„๊ธฐ ์ฒ˜๋ฆฌ
  • 1์ธ ๊ธฐ๋Šฅ ์„ ํƒ์‹œ ์šด๋™ ํ›„ ๋กœ์ง ๊ตฌํ˜„
  • 1์ธ ๊ธฐ๋Šฅ์œผ๋กœ ์šด๋™ ํ›„ ๋ฒ„๋”” ์ง„ํ™”๋ทฐ ๊ตฌํ˜„

[Add] ์˜จ๋ณด๋”ฉ 4ํŽ˜์ด์ง€ ์บ๋ฆญํ„ฐ ์ด๋ฏธ์ง€ ๋ณ€๊ฒฝ, ๋ ˆ๋ฒจ์—… ๋ทฐ ์บ๋ฆญํ„ฐ ์ •๋ฉด -> ๋ฐ˜์ธก๋ฉด์œผ๋กœ ๋ณ€๊ฒฝ

๐Ÿ›  Issue

์˜จ๋ณด๋”ฉ 4ํŽ˜์ด์ง€ ์บ๋ฆญํ„ฐ ์ด๋ฏธ์ง€ ๋ณ€๊ฒฝ, ๋ ˆ๋ฒจ์—… ๋ทฐ ์บ๋ฆญํ„ฐ ์ •๋ฉด -> ๋ฐ˜์ธก๋ฉด์œผ๋กœ ๋ณ€๊ฒฝํ–ˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • ์˜จ๋ณด๋”ฉ ํŽ˜์ด์ง€ ์บ๋ฆญํ„ฐ ์ด๋ฏธ์ง€ ๋ณ€๊ฒฝ
  • ๋ ˆ๋ฒจ์—… ๋ทฐ ์บ๋ฆญํ„ฐ ์ •๋ฉด -> ๋ฐ˜์ธก๋ฉด์œผ๋กœ ๋ณ€๊ฒฝ

[Feat] Mian View ์ˆ˜์ •

๐Ÿ›  Issue

๋ฉ”์ธ ๋ทฐ ์ž‘์—…์„ ๋งˆ๋ฌด๋ฆฌ ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • ๋‹ค์Œ ์„ฑ์žฅ๊นŒ์ง€ ๋‚จ์€ ์šด๋™ ํšŸ์ˆ˜ ํ‘œ์‹œ
  • ๋ ˆ๋ฒจ ๋ณ€ํ™”์— ๋”ฐ๋ฅธ ์ด๋ฏธ์ง€ ๊ฐ€์ ธ์˜ค๊ธฐ
  • ์˜ค๋Š˜์˜ ์šด๋™ ์‹œ๊ฐ„, ์†Œ๋ชจ ์นผ๋กœ๋ฆฌ ๋‚˜ํƒ€๋‚ด๊ธฐ

[Hotfix] ํ”„๋กœ์ ํŠธ ํŒŒ์ผ ์žฌ์ƒ์„ฑ ๋ฐ ์ฝ”๋“œ ์˜ฎ๊ธฐ๊ธฐ, Release ์—๋Ÿฌ ํ•ด๊ฒฐ

๐Ÿ›  Issue

์ด์Šˆ์— ๋Œ€ํ•ด์„œ๋Š” ๋…ธ์…˜ ํŽ˜์ด์ง€์— ์ƒ์„ธํžˆ ์ ์–ด๋†“์•˜์Šต๋‹ˆ๋‹ค!

๐Ÿ“ To-do

  • ํ”„๋กœ์ ํŠธ ํŒŒ์ผ ์žฌ์ƒ์„ฑ ๋ฐ ์ฝ”๋“œ ์˜ฎ๊ธฐ๊ธฐ
  • Release ์—๋Ÿฌ ํ•ด๊ฒฐ

[Refactor] CoreData ์‹ฑ๊ธ€ํ„ด ํŒจํ„ด ํ™œ์šฉ ๊ตฌ์กฐ๋กœ ๋ณ€๊ฒฝ

๐Ÿ›  Issue

settings๋ฅผ ๊ฑท์–ด๋‚ด๊ณ , CoreDataManager๋ฅผ ์ผ๋ถ€ ์ˆ˜์ •ํ•œ ๋‹ค์Œ,
CoreData๋ฅผ ์‹ฑ๊ธ€ํ„ด ํŒจํ„ด์œผ๋กœ ํ™œ์šฉํ•˜๋Š” ๊ตฌ์กฐ๋กœ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.

์ด์™€ ๊ด€๋ จ๋œ View์˜ ๋ณ€์ˆ˜๋“ค๋„ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • CoreDataManager CRUD ๋ฉ”์„œ๋“œ ์ˆ˜์ •
  • CoreData UserData DataModel ํ”„๋กœํผํ‹ฐ, ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€
  • CoreData WorkoutData DataModel ํ”„๋กœํผํ‹ฐ, ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€
  • CoreData CharacterData DataModel ํ”„๋กœํผํ‹ฐ, ๋ฉ”์„œ๋“œ ์ถ”๊ฐ€

Feature #1 - ๊ธฐ๋ณธ ๋ทฐ ํŒŒ์ผ ์ƒ์„ฑ, ์—ฐ๊ฒฐ

๐Ÿ›  Issue

๊ธฐ๋ณธ ๋ทฐ ํŒŒ์ผ ์ƒ์„ฑ, ์—ฐ๊ฒฐ

ํ•„์š”ํ•œ ์Šค์œ„ํ”„ํŠธ ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๊ณ  ๋ทฐ ๊ฐ„ ํ™”๋ฉด ์ „ํ™˜์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.
์ปดํฌ๋„ŒํŠธ ๋ฐฐ์น˜๋Š” ์ด ์ด์Šˆ ์ดํ›„์— ์ง„ํ–‰ํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • ํ•„์š”ํ•œ ์Šค์œ„ํ”„ํŠธ ํŒŒ์ผ ์ƒ์„ฑ(ํ•„์š”ํ•œ ๋ชจ๋“  ๋ทฐ)
  • ๋ทฐ ๊ฐ„ ํ™”๋ฉด ์ „ํ™˜ ๊ตฌํ˜„

[Feat] User Data Save

๐Ÿ›  Issue

์šด๋™ ์ค‘์ด๋ผ๋Š” ๊ฒƒ์„ user default์— ์ €์žฅ
๋ฉ”์ธ๋ทฐ์— ์žˆ๋Š” ๋ฒ„ํŠผ์„ ๋ฐ”๊ฟ”์•ผ ํ•จ
์‚ฌ์šฉ์ž๊ฐ€ ๊ฐ–๊ณ  ์žˆ๋Š” ํ† ํฐ์„ ๊ณ„์† ์—ฐ๊ฒฐ์ค‘์ธ ์ƒํƒœ๋กœ ๋งŒ๋“ค์–ด์ค˜์•ผ ํ•จ(์•ฑ์„ ๊ผˆ๋‹ค ์ผฐ์„๋•Œ - ์—ฐ๊ฒฐ์ด ์ง€์†๋˜์–ด ์žˆ์–ด์•ผ ํ•จ)

๐Ÿ“ To-do

  • Workout View๋กœ ๋„˜์–ด๊ฐˆ๋•Œ ์‚ฌ์šฉ์ž๊ฐ€ ์šด๋™ ์ค‘์ด๋ผ๋Š” ๊ฒƒ์„ user default์— ์ €์žฅ
  • ์‚ฌ์šฉ์ž๊ฐ€ ์šด๋™ ์ค‘์ด๋ผ๋ฉด Main View์— ์žˆ๋Š” ๋ฒ„ํŠผ์„ ๋ฐ”๊ฟ”์•ผ ํ•จ
  • ์šด๋™ ์ข…๋ฃŒ ์‹œ ๋‚ด ๊ธฐ๋ก Coredata ์ €์žฅ - settings.istodayworkout (userdefault)๊ฐ’ ๋ณ€๊ฒฝ, ์šด๋™ ๊ธฐ๋ก Coredata์— ์ €์žฅ
  • ์ƒ๋Œ€๋ฐฉ๊ณผ ํ†ต์‹  ํ›„ ์ƒ๋Œ€๋ฐฉ์˜ uuid, ์šด๋™ ์™„๋ฃŒ ์—ฌ๋ถ€ user default์— ์ €์žฅ
  • SearchPartner View์—์„œ ์—ฐ๊ฒฐํ•˜๊ธฐ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅธ ํ›„ ์• ํ”Œ์›Œ์น˜ ์ฐฉ์šฉ๊นŒ์ง€ ํ™•์ธํ•˜๋ฉด -> ์‚ฌ์šฉ์ž์™€ ์—ฐ๊ฒฐํ–ˆ๋˜ ํ”ผ์–ด๊ฐ€ ์šด๋™์ข…๋ฃŒ ํ›„ ์ปค๋„ฅํŠธํ•œ ํ”ผ์–ด์™€ ์ผ์น˜ํ•˜๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ - ์ฝ”์–ด๋ฐ์ดํ„ฐ ๋‚ด์— UUID๋ฅผ ์ƒ์„ฑ ํ›„ ์ €์žฅ)
  • WorkoutView์—์„œ ๊ทธ๋งŒํ• ๋ž˜์š”๋ฅผ ๋ˆ„๋ฅด๋ฉด ๋‹ค์Œ๋ทฐ๋กœ ๋„˜์–ด๊ฐ€์ง€ ์•Š๋Š” Error

[Fix] CoreData Entity ์ถ”๊ฐ€ ์‹œ ์˜ค๋ฅ˜ ๋ฐœ์ƒ ํ•ด๊ฒฐ

๐Ÿ›  Issue

CoreData Entity ์ถ”๊ฐ€ ์‹œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋ถ€๋ถ„์„ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • CoreDataManager Create ๊ด€๋ จ ๋ฉ”์„œ๋“œ ์ˆ˜์ •
  • ๊ธฐ์กด ๋ฆด๋ฆฌ์ฆˆ ๋ฒ„์ „์—์„œ ์ƒˆ ๋ฒ„์ „์œผ๋กœ ์—…๋ฐ์ดํŠธ ์‹œ ๋ฐœ๊ฒฌ๋˜๋Š” ์ถฉ๋Œ ์˜ค๋ฅ˜ ํ•ด๊ฒฐ

[Fix] ์นผ๋กœ๋ฆฌ, ์šด๋™์‹œ๊ฐ„ ๋ฉ”์ธ ๋ทฐ์— ๋œจ๋Š” ๋กœ์ง ์ˆ˜์ •

๐Ÿ›  Issue

  • ํ˜„์žฌ ๋ฉ”์ธ ๋ทฐ์— ์žˆ๋Š” ์นผ๋กœ๋ฆฌ์™€ ์šด๋™์‹œ๊ฐ„์ด 0์œผ๋กœ ๋œจ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
  • 0kcal ๊ณผ 0h 0m ํ˜•์‹์œผ๋กœ ๋œจ๋„๋ก ์ˆ˜์ •ํ•˜๊ณ ,
  • ๊ฐ’์ด ์ค‘๋ณต๋˜์–ด ๋œจ๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • ๊ด€๋ จ ์ฝ”์–ด๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ
  • ๋ฉ”์ธ๋ทฐ์— ๋„์›Œ์ฃผ๊ธฐ

[Feat] ์šด๋™ ์™„๋ฃŒ ํ™”๋ฉด ๋ชจ๋‹ฌ, ๋ฐฑ๋ฒ„ํŠผ ๋ชจ์…˜ ๊ตฌํ˜„ ์™„๋ฃŒ

๐Ÿ›  Issue

์šด๋™ ์™„๋ฃŒ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅผ ๋•Œ, ๋ชฉํ‘œ ๋ฏธ๋‹ฌ์„ฑ์‹œ ๋ชจ๋‹ฌ์ด ๋œจ๋Š” ๊ฒƒ
๊ทธ๋ฆฌ๊ณ  '์ˆ˜๊ณ ํ•˜์…จ์–ด์š”' ํ™”๋ฉด์—์„œ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ๋ฉ”์ธํ™”๋ฉด์œผ๋กœ ๊ฐ€๋Š” ๊ฒƒ,
์šด๋™ํ•˜๊ธฐ ํ™”๋ฉด์— ์ „์ฒด ํ™”๋ฉด ๋ ˆ์ด์•„์›ƒ์„ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค.
์ง„ํ™” ํ™”๋ฉด๋„ ์ผ๋ถ€ ์ˆ˜์ •ํ•˜์—ฌ ์—ฐ๊ฒฐํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • ์šด๋™ ์™„๋ฃŒ ๋ฒ„ํŠผ ๋ˆ„๋ฅผ ๋•Œ ๋ชฉํ‘œ ๋ฏธ๋‹ฌ์„ฑ ๋ชจ๋‹ฌ ๊ตฌํ˜„
  • ๋ชฉํ‘œ ๋‹ฌ์„ฑ ํ™•์ธ ๋ฒ„ํŠผ ๋ˆ„๋ฅผ ๋•Œ ๋ชฉํ‘œ ๋ฏธ๋‹ฌ์„ฑ ๋ชจ๋‹ฌ ๊ตฌํ˜„
  • ์ˆ˜๊ณ ํ•˜์…จ์–ด์š” ํ™”๋ฉด์—์„œ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ๋ฉ”์ธํ™”๋ฉด์œผ๋กœ ๊ฐ€๋Š” ๊ฒƒ
  • ์šด๋™ํ•˜๊ธฐ ํ”Œ๋กœ์šฐ์— ์žˆ๋Š” ํ™”๋ฉด(๋„ค๋น„๊ฒŒ์ด์…˜ํžˆ๋“  ํ•œ ๊ฒƒ) ๋ ˆ์ด์•„์›ƒ(ํŒจ๋”ฉ ๊ฐ’) ์ˆ˜์ •
  • ์ง„ํ™”ํ™”๋ฉด ์ผ๋ถ€ ์ˆ˜์ •, ๋งˆ์ง€๋ง‰ ๋ฒ„ํŠผ์—์„œ ์—ฐ๊ฒฐ

[Docs] ๋ฆฌํŒฉํ† ๋ง์„ ์œ„ํ•œ ๊ธฐ์กด ์ฝ”๋“œ ์ฃผ์„ ์ž‘์—…

๐Ÿ›  Issue

๋ฆฌํŒฉํ† ๋ง์„ ์œ„ํ•œ ์ฃผ์„์ž‘์—…์ž…๋‹ˆ๋‹ค.
ํ˜„์žฌ ์กด์žฌํ•˜๋Š” View ์ฝ”๋“œ์˜ ๋™์ž‘ ๋ฐฉ์‹์„ ๊ธฐ๋กํ•˜๊ณ 
์ƒˆ๋กญ๊ฒŒ ๋ณ€๊ฒฝํ•˜๊ธฐ ์œ„ํ•ด ๋ถ„๋ฆฌํ•ด์•ผ ํ•  ์ฝ”๋“œ๋“ค์„ ์ฒดํฌํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • View ํŒŒ์ผ์— ๋Œ€ํ•œ ์ฃผ์„์ž‘์—…
  • Model ํŒŒ์ผ์— ๋Œ€ํ•œ ์ฃผ์„์ž‘์—…

[Feat] Search Partner View์— ๋กœ๋”ฉ ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ถ”๊ฐ€

๐Ÿ›  Issue

ํŒŒํŠธ๋„ˆ ๊ฒ€์ƒ‰ ์ค‘์— ๋กœ๋”ฉ ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ถ”๊ฐ€ ์ž‘์—… ์ด์Šˆ

๐Ÿ“ To-do

  • ๋กœ๋”ฉ ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ถ”๊ฐ€
  • ์•ˆ๋…• ๋ฒ„ํŠผ ์‚ญ์ œ
  • ์—ฐ๊ฒฐ ์™„๋ฃŒ์‹œ ์› 3๊ฐœํ™”๋ฉด ์ถ”๊ฐ€

[Hotfix] 1์ธ๊ธฐ๋Šฅ ๋ฐ 2์ธ ๊ธฐ๋Šฅ View์ด๋™ ์˜ค๋ฅ˜

๐Ÿ›  Issue

1์ธ ๊ธฐ๋Šฅ ๊ด€๋ จ๋œ ๋ทฐ๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด์„œ 1์ธ๊ธฐ๋Šฅ๊ณผ 2์ธ๊ธฐ๋Šฅ ๋ชจ๋‘ View๋ฅผ ์ด๋™ํ• ๋•Œ ์ž๋™์œผ๋กœ ๋’ค๋กœ๊ฐ€๊ฒŒ ๋˜๋Š” ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • app flow ์ˆ˜์ •
  • navigation์˜ค๋ฅ˜ ์ˆ˜์ •

[Hotfix] NI ํ†ต์‹  ์˜ค๋ฅ˜ ํ•ด๊ฒฐ

๐Ÿ›  Issue

ํŒŒํŠธ๋„ˆ ์ฐพ๊ธฐ์—์„œ NI ํ†ต์‹ ์ด ์ œ๋Œ€๋กœ ์ด๋ฃจ์–ด์ง€์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
finding์ƒํƒœ์—์„œ ํŒŒํŠธ๋„ˆ๋ฅผ ์ฐพ์ง€ ๋ชปํ–ˆ๋Š”๋ฐ found ์ƒํƒœ๋กœ ๋ณ€๊ฒฝ๋ฉ๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • NI ์—๋Ÿฌ ํ•ด๊ฒฐ

[Feat] Today ์นผ๋กœ๋ฆฌ, ์šด๋™์‹œ๊ฐ„ ์ดˆ๊ธฐํ™”

๐Ÿ›  Issue

ํ•˜๋ฃจ๊ฐ€ ์ง€๋‚˜๋ฉด ์‚ฌ์šฉ์ž์˜ ์šด๋™ ์นผ๋กœ๋ฆฌ, ์šด๋™์‹œ๊ฐ„์„ ์ดˆ๊ธฐํ™”์‹œ์ผœ์คŒ

๐Ÿ“ To-do

  • ์•ฑ์„ ๋งˆ์ง€๋ง‰์œผ๋กœ ์ข…๋ฃŒํ•œ ์‹œ๊ฐ„์™€ ์•ฑ์„ ์ผ  ํ˜„์žฌ ์‹œ์ ์ด ๋‹ค๋ฅด๋ฉด(์ƒˆ๋กœ์šด ๋‚ ์ด ๋˜์—ˆ์œผ๋ฉด) user default์— ์ €์žฅ๋œ partner์˜ ์ •๋ณด, ์šด๋™ ์ •๋ณด ์ดˆ๊ธฐํ™”

[Feat] NI, MPC, CoreData ํ•„์š”ํ•œ ํŒŒ์ผ ์ถ”๊ฐ€

๐Ÿ›  Issue

  • ๋‚ด ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•œ CoreData ์‚ฌ์šฉ
  • ๋‚ด ์ฃผ๋ณ€ ๋ฒ„๋””๋ฅผ ํ™•์ธํ•˜๊ณ  ์šด๋™ ๋ฐ์ดํ„ฐ๋ฅผ ๊ณต์œ ํ•˜๊ธฐ ์œ„ํ•ด Nearby Interaction, Multipeer Connectivity๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

๐Ÿ“ To-do

  • MPC ์—ฐ๊ฒฐ
  • NI ์—ฐ๊ฒฐ
  • CoreData ์—ฐ๊ฒฐ

[Hotfix] ๋””๋ฒ„๊น… ์˜ค๋ฅ˜

๐Ÿ›  Issue

์‹ค ๊ธฐ๊ธฐ์—์„œ ํ…Œ์ŠคํŠธํ•˜๋Š” ๋™์•ˆ ๋””๋ฒ„๊น… ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜์˜€์Šต๋‹ˆ๋‹ค

๐Ÿ“ To-do

  • ์ตœ์ข…ํ™”๋ฉด ๋‚˜์˜ค๊ณ  ์šด๋™ ์ƒํƒœ ์ข…๋ฃŒ๊ฐ€ ์•ˆ๋  ๋•Œ๊ฐ€ ์žˆ๋‹ค. ๋ฉ”์ธ ๋ทฐ๋กœ ๊ฐˆ๋•Œ ์šด๋™์ด ๋๋‚ฌ์Œ์—๋„ ์šด๋™ํ•˜๊ธฐ ํ™”๋ฉด์œผ๋กœ ๊ฐ

[Feat] ์ง„ํ™”๋ทฐ, ํŒŒํŠธ๋„ˆ๋ทฐ ๋งˆ๋ฌด๋ฆฌ ์ˆ˜์ •

๐Ÿ›  Issue

ํ˜„์žฌ ๋ฏธ์™„์„ฑ๋œ ๋ทฐ์˜ ๋ถ€๋ถ„๋“ค์„ ์™„์„ฑ์‹œํ‚ต๋‹ˆ๋‹ค. ์ด ์ด์Šˆ๊ฐ€ ๋๋‚˜๋ฉด ์บ๋ฆญํ„ฐ ์‚ฝ์ž… ํƒœ์Šคํฌ๋งŒ ๋‚จ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

๐Ÿ“ To-do

  • ์„ธํŒ…๋ทฐ - ์นผ๋กœ๋ฆฌ ์„ค์ •์‹œ ๋ณธ์ธ์ด ์„ค์ •ํ•œ ์นผ๋กœ๋ฆฌ๋กœ ์ฒ˜์Œ ๊ฐ’์ด ๋‚˜ํƒ€๋‚˜๋„๋ก ๋ณ€๊ฒฝ
  • ์นผ๋กœ๋ฆฌ ์žฌ ์„ธํŒ…์‹œ ์ƒ๋‹จ ๋’ค๋กœ๊ฐ€๊ธฐ ๋ฒ„ํŠผ ์ˆจ๊ธฐ๊ธฐ
  • ์ง„ํ™” ๋ทฐ์˜ ๋ชฉํ‘œ๋‹ฌ์„ฑ ๋ณ€์ˆ˜ ์กฐ์ •
  • SearchPartnerView ํŒŒํŠธ๋„ˆ ๋ฐœ๊ฒฌ์‹œ ์ด๋ฏธ์ง€ ์ˆ˜์ •, ํ…์ŠคํŠธ ์ˆ˜์ •, ๋ฒ„ํŠผ '์—ฐ๊ฒฐํ•˜๊ธฐ'์—์„œ ๋‹ค๋ฅธ ๊ฒƒ์œผ๋กœ ๋ฐ”๊พธ๊ธฐ

[Feat] ์šด๋™ ์ข…๋ฃŒ ํ›„ ํ™”๋ฉด์—์„œ ์ ‘์ด‰ ์ค‘์ธ ์ƒํƒœ ๋ณด์—ฌ์ฃผ๊ธฐ

๐Ÿ›  Issue

  • ์šด๋™ ์ข…๋ฃŒ ํ›„ ์—ฐ๊ฒฐ ํ™”๋ฉด์—์„œ ์ ‘์ด‰ํ•˜๊ธฐ ๋ฒ„ํŠผ์„ ๋ˆŒ๋ €๋Š”์ง€ ์ž˜ ๋ชจ๋ฆ„

๐Ÿ“ To-do

  • ์ ‘์ด‰ํ•˜๊ธฐ ๋ฒ„ํŠผ์„ ๋ˆŒ๋ ธ๋Š”์ง€ ์ž˜ ๋ชจ๋ฆ„
  • ์šด๋™ ๋๋‚˜๊ณ  ๋‹ˆ์˜ค๋Š” ์—ฐ๊ฒฐ ์ž˜ ์•ˆ๋จ -> ๋‘๋ฒˆ ๋ˆ„๋ฅผ๋•Œ ๋ฌธ์ œ๊ฐ€ ์žˆ์Œ, ์•ˆ์ •์„ฑ ๋ฌธ์ œ (ํ•œ๋ฒˆ๋งŒ ๋ˆ„๋ฅด๋ฉด ์ž˜๋จ, 2๋ฒˆ์ด์ƒ ๋ˆ„๋ฅด๋ฉด bumped๊ฐ€ ์•ˆ๋จ)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.