κΈ°μ€ λ¬Έμ:
C:/MainFE/AUTH_INTEGRATION_CHECKLIST.mdC:/MainFE/MAINAPP_MIGRATION_MATRIX.md
λ¬Έμ λͺ©μ :
MainFEμ’ λ£λ₯Ό μ μ λ‘MainAPPλ¨λ μ΄μμ νμν κΈ°λ₯ μ΄μ λ²μλ₯Ό μ± λ ν¬ λ΄λΆ κΈ°μ€μΌλ‘ κ³ μ νλ€.MainAPPμMainBEμ νμ¬ κ΅¬ν μνλ₯Ό MainFE μ’ λ£ μ΄ν μ΄μ κΈ°μ€(source of truth)μΌλ‘ μΌλλ€.- νμ¬
MainAPPμ ꡬν μνλ₯Όμλ£,λΆλΆκ΅¬ν,미ꡬνμΌλ‘ λλ κΈ°λ‘νλ€. - λ¨μ TODOμ μ μ± λ―Ένμ νλͺ©μ μ΄μ 보μ κ΄μ μμ μ 리νλ€.
μ μΈ λ²μ:
- μΉ λΌμ°ν , μΉ λ μ΄μμ, μΉ CSS, λΈλΌμ°μ μ μ© UXλ μ΄μ λμμΌλ‘ λ³΄μ§ μλλ€.
- μ΄λ² λ¬Έμλ κΈ°λ₯ ꡬνμ΄ μλλΌ μΈλ²€ν 리μ μμ κΈ°μ€ λ¬Έμνλ§ λ€λ£¬λ€.
- μΈμ¦ κΈ°λ°μ μλ£ μνλ€.
- μ± μμ μ μ μ₯λ ν ν° κΈ°μ€μΌλ‘
MainλλOnboardingμΌλ‘ μ΄κΈ° μ§μ μ΄ λΆκΈ°λλ€. - μλΉμ€ API μΈμ¦ ν€λ μλ λΆμ°©κ³Ό refresh μ¬μλ κΈ°λ°μ΄ μλ€.
- μ€μ μ¬μ©μ κΈ°λ₯ μ€ νμ¬ μλ―Έ μκ² μ°κ²°λ μμμ
ν,νΌλ,νΌλ μμΈ,λκΈ μμ±,λ‘κ·Έ μΊλ¦°λ,μλ³ μΌκΈ° λͺ©λ‘,λ‘κ·Έ μμΈ,νλ‘ν,νλ‘μ° λͺ©λ‘,λ°°μ‘ μ μ²,μ μ ν΄κΈ,λ±λ‘ νλ‘μ°,λ°μΌλ¦¬ λ―Έμ (μΌκΈ°/ν΄μ¦/μ€λμ μ§λ¬Έ)μ΄λ€. μ€μ μ λ‘κ·Έμμκ³Ό κ³μ μν νμΈμ΄ κ°λ₯ν μ΅μ μ΄μ μμ€μΌλ‘ μ 리λμλ€.
- λ©μΈ ν:
Home,Log,Feed,Option - μΈμ¦ μ€ν:
Onboarding,Register - μμΈ μ€ν μ€ μ€μ μ°κ²°λ¨:
FeedDiary,FeedAvatar,LogDetail,Profile,Follow,Delivery,DeliveryComplete,UnlockGarden,RegistrationAvatar,RegistrationCreationDetail,RegistrationSelectionDetail,RegistrationPlantNickname,DailyMissionWriteDiary,DailyMissionQuizMultipleChoice,DailyMissionQuizOx,DailyMissionChecking - μμΈ μ€ν μ€ νλ μ΄μ€νλ: μμ
- μλ£
- μΈμ¦ κΈ°λ°
- μ¨λ³΄λ©/μ€νλμ
- OAuth λ‘κ·ΈμΈ
- νΌλ λͺ©λ‘ API μ°λ
- νΌλ μμΈ μ‘°ν API μ°λ
- λκΈ μμ± API μ°λ
- λ‘κ·Έ μΊλ¦°λ API μ°λ
- μλ³ μΌκΈ° λͺ©λ‘ API μ°λ
- μ€λμ μ§λ¬Έ λ―Έμ
- λΆλΆκ΅¬ν
- λΉνμ λ±λ‘
- ν λ©μΈ λ§κ°
- λ‘κ·Έ νλ©΄ μΌλΆ
- νΌλ μμΈ UX
- νλ‘ν
- νλ‘μ°
- λ°°μ‘
- λ±λ‘ νλ‘μ°
- λ°μΌλ¦¬ λ―Έμ μΌκΈ° μμ±
- μ€μ /μ΄μ μλ΄
| κΈ°λ₯λͺ | νμ¬ MainAPP μν | κ·Όκ±° νμΌ |
|---|---|---|
| μΈμ¦ κΈ°λ° | OAuth μ΄ν μλΉμ€ JWT μ μ₯, μ± μ¬μ€ν ν μΈμ 볡μ, Authorization μλ λΆμ°©, refresh 1ν μ¬μλ, λ‘κ·Έμμ κΈ°λ°κΉμ§ ꡬνλ¨ | src/hooks/auth/useSupabaseOAuth.ts, src/hooks/auth/useBackendLogin.ts, src/stores/useTokenStore.ts, src/apis/instance.ts, src/utils/auth.ts, src/navigation/RootNavigator.tsx |
| μ¨λ³΄λ©/μ€νλμ | μ¨λ³΄λ© μ¬λΌμ΄λμ OAuth μμ UIκ° μμ. μ± μμ μ splash μ²λ¦¬ ν¬ν¨ | src/pages/onboarding/OnboardingScreen.tsx, src/components/common/Splash.tsx |
| νΌλ λͺ©λ‘ | λͺ©λ‘ μ‘°ν APIμ 그리λ λ λλ§, κ²μκΈ νμ λ³ μμΈ μ§μ μ΄ λμν¨ | src/pages/feed/FeedScreen.tsx, src/components/feed/FeedList.tsx, src/hooks/feed/useFeedApi.ts, src/apis/feed/feedApi.ts |
| νΌλ μμΈ μ‘°ν | μΌκΈ°ν/μλ°νν μμΈ μ‘°ν, μνλ³ λ‘λ©/μλ¬/λΉ λκΈ μ²λ¦¬, λκΈ μ λ ₯ νλ¦μ΄ ꡬνλ¨ | src/pages/feed/FeedDiaryScreen.tsx, src/pages/feed/FeedAvatarScreen.tsx, src/components/feed/FeedDetail.tsx, src/components/common/CommentComposer.tsx, src/components/common/ScreenHeader.tsx, src/components/common/StatusView.tsx, src/hooks/log/useDiaryDetailApi.ts, src/hooks/feed/useAvatarPostDetailApi.ts |
| λκΈ μμ± | μμΈ νλ©΄μμ λκΈ λ±λ‘ ν refetchκΉμ§ μ°κ²°λ¨ | src/hooks/comments/useCommentApi.ts, src/apis/comments/commentApi.ts, src/components/common/Comment.tsx |
| λ‘κ·Έ μΊλ¦°λ | μ μ΄λ, μΊλ¦°λ μ‘°ν, μΌμλ³ λ―Έμ μλ£ μμ΄μ½ λ λλ§μ΄ ꡬνλ¨ | src/pages/log/LogScreen.tsx, src/components/log/LogCalendar.tsx, src/hooks/log/useCalendarApi.ts, src/apis/log/calendarApi.ts |
| μλ³ μΌκΈ° λͺ©λ‘ | μ μ΄λ, μΌκΈ° μΈλ€μΌ λͺ©λ‘ μ‘°νμ μμΈ μ§μ μ΄λ²€νΈκ° ꡬνλ¨ | src/pages/log/LogScreen.tsx, src/components/log/MyDiary.tsx, src/hooks/log/useDiariesApi.ts, src/apis/log/diariesApi.ts |
| λ‘κ·Έ μμΈ | LogDetail μ€μ νλ©΄, λκΈ μ
λ ₯, diary detail API κΈ°λ° μμΈ λ λλ§μ΄ ꡬνλ¨ |
src/pages/log/LogDetailScreen.tsx, src/components/log/MyDiaryDetail.tsx, src/components/common/CommentComposer.tsx, src/hooks/log/useDiaryDetailApi.ts, src/apis/log/diaryDetailApi.ts |
| νλ‘ν μ‘°ν | μ¬μ©μ κΈ°λ³Έ μ 보 μ‘°ν, λν μ μ μ 보, μΉκ΅¬ λ¬Όμ£ΌκΈ°, νλ‘μ°/μΈνλ‘μ° λ²νΌμ΄ ꡬνλ¨ | src/pages/profile/ProfileScreen.tsx, src/components/profile/ProfileDetail.tsx, src/hooks/profile/useProfileApi.ts, src/apis/profile/profileApi.ts, src/hooks/follow/useFollowApi.ts |
| νλ‘μ° λͺ©λ‘ | νλ‘μ/νλ‘μ λͺ©λ‘ μ‘°ν, ν μ ν, νλ‘μ ν μΈνλ‘μ°, νλ‘ν μ΄λμ΄ κ΅¬νλ¨ | src/pages/follow/FollowScreen.tsx, src/components/follow/UserCard.tsx, src/hooks/follow/useFollowApi.ts, src/apis/follow/followApi.ts |
| μ μ ν΄κΈ | POST /api/v1/gardens/unlock body μλ νΈμΆκ³Ό ν μ¬μ‘°νκ° μ°κ²°λ¨ |
src/pages/delivery/UnlockGardenScreen.tsx, src/hooks/delivery/useDeliveryApi.ts, src/apis/delivery/deliveryApi.ts, src/apis/home/homeApi.ts |
| λ°°μ‘ μ μ² | λ°°μ‘μ© μλ¬Ό μ ν, λ°°μ‘ μ λ ₯ νΌ, μ μ² μλ£ νλ©΄κΉμ§ μ°κ²°λ¨ | src/pages/delivery/UnlockGardenScreen.tsx, src/pages/delivery/DeliveryScreen.tsx, src/pages/delivery/DeliveryCompleteScreen.tsx, src/hooks/delivery/useDeliveryApi.ts, src/apis/delivery/deliveryApi.ts |
| λ±λ‘ νλ‘μ° | μλ°ν μμ, μμ±ν μ΄λ―Έμ§ μ λ‘λ, μ νν μμΈ, λ³λͺ μ§κΈ°μ ν 볡κ·κΉμ§ μ°κ²°λ¨ | src/pages/registration/RegistrationAvatarScreen.tsx, src/pages/registration/RegistrationCreationDetailScreen.tsx, src/pages/registration/RegistrationSelectionDetailScreen.tsx, src/pages/registration/RegistrationPlantNicknameScreen.tsx, src/stores/useRegistrationStore.ts, src/hooks/avatars/useAvatarApi.ts, src/apis/avatars/avatarApi.ts |
| λ°μΌλ¦¬ λ―Έμ ν΄μ¦ | κ°κ΄μ/OX ν΄μ¦ μ‘°νμ λ΅μ μ μΆ, ν μ§μ μ μ΄ μ°κ²°λ¨ | src/pages/dailyMission/DailyMissionQuizMultipleChoiceScreen.tsx, src/pages/dailyMission/DailyMissionQuizOxScreen.tsx, src/hooks/mission/useMissionApi.ts, src/apis/missions/missionApi.ts |
| μ€λμ μ§λ¬Έ λ―Έμ | GET /api/v1/survey μ‘°ν, POST /api/v1/survey/answer μ μΆ, ν μλ£ μν λ°μμ΄ κ΅¬νλ¨. CHECKING fallbackμ μ κ±°λμκ³ ν¬μΈνΈ μ§κΈμ μλ² μ±
μμ΄λ€. |
src/pages/dailyMission/DailyMissionCheckingScreen.tsx, src/hooks/mission/useMissionApi.ts, src/apis/missions/missionApi.ts, src/pages/home/HomeScreen.tsx |
| μ€μ /λ‘κ·Έμμ | μ€μ νλ©΄μμ κ³μ μν νμΈ, λ‘κ·Έμμ λ²νΌ, μ΄μ μλ΄λ₯Ό νμΈν μ μμ | src/pages/option/OptionScreen.tsx, src/utils/auth.ts, src/stores/useTokenStore.ts, src/navigation/RootNavigator.tsx |
| κΈ°λ₯λͺ | νμ¬ MainAPP μν | 보μ νμ μ¬ν | κ·Όκ±° νμΌ |
|---|---|---|---|
| λΉνμ λ±λ‘ | λλ€μ μ λ ₯κ³Ό νμκ°μ API νΈμΆμ μμ | κ°μ μ€ν¨ μμλ λ±λ‘ νλ‘μ°λ‘ μ§μ μν€λ νμ¬ μ μ± μ΄ μ΄μ κΈ°μ€μΌλ‘ νμ λ κ²μ μλ | src/pages/register/RegisterScreen.tsx, src/hooks/register/useRegister.ts, src/apis/register/registerApi.ts |
| ν λ©μΈ | ν summary API, panel API, λ¬Ό/νλΉ μ‘μ
, κ°μ μ²΄ν¬ λͺ¨λ¬, λ―Έμ
μνΈ, μ κΈ/λΉ μ¬λ‘― λΆκΈ°μ missionType λΌμ°ν
μ΄ μ°κ²°λ¨ |
μ€κΈ°κΈ° μ€μμ΄ν κ²μ¦, μμ μμ μ κ², 문ꡬ/κ°κ²© κ°μ UI λ§κ°κ³Ό λ¬Ό/νλΉ API κ³μ½ μμΈ νμΈμ΄ λ¨μ μμ | src/pages/home/HomeScreen.tsx, src/hooks/home/useHomeApi.ts, src/apis/home/homeApi.ts, src/components/home/*, src/stores/useEmotionSurveyStore.ts |
| λ‘κ·Έ νλ©΄ μΌλΆ | μΊλ¦°λ/μΌκΈ° λͺ©λ‘κ³Ό λ‘κ·Έ μμΈκΉμ§ μ°κ²°λ¨ | λ―Έμ ν λ μ§ μ ν ν μμΈ μ‘μ μ μμ§ μμ | src/pages/log/LogScreen.tsx, src/pages/log/LogDetailScreen.tsx, src/apis/log/diaryDetailApi.ts |
| νΌλ μμΈ UX | μ‘°ν/λκΈ/μν μ²λ¦¬μ νλ‘ν μ΄λμ λ¨ | 곡κ°/μ κ³ /λκΈ μμ Β·μμ λ μμ§ μμ | src/components/feed/FeedDetail.tsx, src/pages/feed/FeedDiaryScreen.tsx, src/pages/feed/FeedAvatarScreen.tsx |
| νλ‘ν | μ¬μ©μ μ‘°νμ λν μ μ/νλ‘μ°/λ¬Όμ£ΌκΈ°κΉμ§ μ°κ²°λ¨ | λ°©λͺ λ‘, λ€μ€ μ μ μμΈ, μΆκ° μνΈμμ© APIλ μμ§ νμ | src/pages/profile/ProfileScreen.tsx, src/components/profile/ProfileDetail.tsx, src/apis/profile/profileApi.ts |
| νλ‘μ° | νλ‘μ/νλ‘μ λͺ©λ‘ μ‘°νμ ν μ ν, νλ‘μ μΈνλ‘μ°κ° λ¨ | νλ‘μ λͺ©λ‘ μͺ½ follow-back μ‘μ μ μλ΅ μ 보 λΆμ‘±μΌλ‘ μμ§ μμ | src/pages/follow/FollowScreen.tsx, src/components/follow/UserCard.tsx, src/apis/follow/followApi.ts |
| λ°°μ‘ | λ°°μ‘μ© μλ¬Ό λͺ©λ‘ μ‘°ν, λ°°μ‘ μ μ², μλ£ νλ©΄, νμμμ μ§μ μ μ°κ²°λ¨ | μ£Όμ κ²μ UI, λ°°μ‘ μ‘°νλ μΆκ° νμΈ νμ | src/pages/delivery/UnlockGardenScreen.tsx, src/pages/delivery/DeliveryScreen.tsx, src/pages/delivery/DeliveryCompleteScreen.tsx, src/apis/delivery/deliveryApi.ts |
| λ±λ‘ νλ‘μ° | λ¨κ³ κ° μν μ μ₯κ³Ό μ΄λ, μμ±ν μ λ‘λ, μ νν/μμ±ν μ΅μ’ λ±λ‘μ ꡬνλ¨ | μ κ· μ μ μλ κ°μ μ§μ μ μ± μ μΆκ° νμΈ νμ | src/pages/registration/RegistrationAvatarScreen.tsx, src/pages/registration/RegistrationCreationDetailScreen.tsx, src/pages/registration/RegistrationSelectionDetailScreen.tsx, src/pages/registration/RegistrationPlantNicknameScreen.tsx, src/stores/useRegistrationStore.ts |
| λ°μΌλ¦¬ λ―Έμ μΌκΈ° μμ± | ν μ€νΈ μ λ ₯, κ³΅κ° μ€μ , μ μΆ κ΅¬μ‘°λ ꡬνλ¨ | μ΄λ―Έμ§ μ λ‘λ-μΌκΈ° μ μ₯ μ΅μ’ μ°κ²°μ μμ§ λ―Έμμ± | src/pages/dailyMission/DailyMissionWriteDiaryScreen.tsx, src/apis/missions/missionApi.ts, src/hooks/mission/useMissionApi.ts |
| μ€μ | λ‘κ·Έμμκ³Ό κ³μ μν νμΈμ κ°λ₯ν¨ | λ²μ νκΈ° μλν, μ½κ΄/λ¬Έμ κ°μ μ΄μ λ§ν¬λ μμ§ μμ | src/pages/option/OptionScreen.tsx |
νμ¬ RootNavigator κΈ°μ€ νλ μ΄μ€νλ μ€ν νλ©΄μ μλ€. Step 3~7 λ²μμ μμΈ νλ©΄ κ΅μ²΄κ° λλ μνλ€.
| λΌμ°νΈλͺ | νμ¬ μν | λΉκ³ |
|---|---|---|
| μμ | λͺ¨λ λμ λΌμ°νΈκ° μ€μ νλ©΄μΌλ‘ κ΅μ²΄λ¨ | λ¨μ νλͺ©μ μ΄μ 보μ/μ μ± μ 리 μ±κ²© |
| νμΌ | νμ¬ μν | νλ¨ |
|---|---|---|
| μμ | μ£Όμ νλ©΄μ λͺ¨λ μ€μ κΈ°λ₯μ κ°μ§ | λ¨μ νλͺ©μ μ΄μ 보μ/μ μ± μ 리 μμ£Ό |
μλ νλ C:/MainFE/MAINAPP_MIGRATION_MATRIX.mdλ₯Ό κΈ°μ€μΌλ‘, MainAPPμ μμ§ μλ κΈ°λ₯ λλ λΆλΆκ΅¬ν κΈ°λ₯μ μ 리ν κ²μ΄λ€.
| κΈ°λ₯λͺ | νμ¬ MainAPP μν | μ°Έμ‘°ν MainFE νμΌ | νμν MainAPP λμ νμΌ λλ μ κ· νμΌ | μ ν쑰건 |
|---|---|---|---|---|
| ν λ©μΈ ν¨λ | /api/v1/homeμ panel μλ΅ κΈ°μ€ μμ½ UI, μ ν/νΌμΉ¨ λ―Έμ
μνΈ, μ€λμ μ§λ¬Έ μ°κ²°κΉμ§ ꡬνλ¨ |
C:/MainFE/src/pages/home/Homepage.tsx, C:/MainFE/src/apis/home/homeApi.ts, C:/MainFE/src/apis/missions/panelApi.ts |
κΈ°μ‘΄ src/pages/home/HomeScreen.tsx, κΈ°μ‘΄ src/apis/home/homeApi.ts, κΈ°μ‘΄ src/hooks/home/useHomeApi.ts, src/components/home/* |
μ€κΈ°κΈ° μ€μμ΄νμ UI λ§κ° νμΈ |
| μλ¬Ό μνΈμμ©(λ¬Ό/νλΉ) | owner κΈ°μ€ λ¬Ό/νλΉ μ‘μ , λ²νΌ μν, ν μ€νΈ, ν λ°°μΉκΉμ§ ꡬνλ¨ | C:/MainFE/src/components/home/FirstPlant.tsx, C:/MainFE/src/components/home/SecondPlant.tsx, C:/MainFE/src/components/home/ThirdPlant.tsx, C:/MainFE/src/components/home/FourthPlant.tsx |
κΈ°μ‘΄ src/components/home/HomeGardenScene.tsx, κΈ°μ‘΄ src/hooks/home/useHomeApi.ts, κΈ°μ‘΄ src/pages/home/HomeScreen.tsx |
μ‘μ API κ³μ½ μμΈμ μ€κΈ°κΈ° λμ νμΈ |
| λ‘κ·Έ μμΈ | diary detail API κΈ°μ€ μ€μ νλ©΄ ꡬν μλ£. μμ κΈ°λ₯κ³Ό μΆκ° μμ μ‘μ λ§ λ―Έμμ± | C:/MainFE/src/pages/log/LogDetailPage.tsx |
κΈ°μ‘΄ src/pages/log/LogDetailScreen.tsx, κΈ°μ‘΄ src/components/log/MyDiaryDetail.tsx |
μμ API μ¬λΆ νμΈ |
| νΌλ μμΈ λ³΄μ | μμΈ μ‘°ν, λκΈ, μν μ²λ¦¬λ ꡬνλ¨. μμ μνΈμμ©μ λ―Έμμ± | C:/MainFE/src/pages/feed/FeedDiaryPage.tsx, C:/MainFE/src/pages/feed/FeedAvatarPage.tsx, C:/MainFE/src/components/feed/*, C:/MainFE/src/components/common/Comment.tsx |
κΈ°μ‘΄ src/pages/feed/FeedDiaryScreen.tsx, κΈ°μ‘΄ src/pages/feed/FeedAvatarScreen.tsx, κΈ°μ‘΄ src/components/feed/FeedDetail.tsx, κΈ°μ‘΄ src/components/common/Comment.tsx |
νλ‘ν νλ©΄, λκΈ/μ’μμ API λ²μ νμΈ |
| νλ‘ν μ‘°ν/μΉκ΅¬ λ¬Όμ£ΌκΈ° | μ¬μ©μ μ‘°ν, λν μ μ λ λλ§, μΉκ΅¬ λ¬Όμ£ΌκΈ°, follow/unfollowκΉμ§ ꡬνλ¨. λ°©λͺ λ‘ λ± μΆκ° κΈ°λ₯μ λ―Έμμ± | C:/MainFE/src/pages/profile/ProfilePage.tsx, C:/MainFE/src/apis/profile/profileApi.ts, C:/MainFE/src/components/profile/* |
κΈ°μ‘΄ src/pages/profile/ProfileScreen.tsx, κΈ°μ‘΄ src/apis/profile/profileApi.ts, κΈ°μ‘΄ src/hooks/profile/*, κΈ°μ‘΄ src/components/profile/* |
λ°©λͺ λ‘ λ° μΆκ° μνΈμμ© API νμΈ |
| νλ‘μ° λͺ©λ‘/κ΄λ¦¬ | νλ‘μ/νλ‘μ λͺ©λ‘ μ‘°νμ νλ‘μ μΈνλ‘μ°λ ꡬνλ¨. νλ‘μ follow-backμ μλ΅ μ 보 λΆμ‘±μΌλ‘ λ―Έμμ± | C:/MainFE/src/pages/follow/FollowPage.tsx, C:/MainFE/src/apis/follow/followApi.ts, C:/MainFE/src/components/follow/* |
κΈ°μ‘΄ src/pages/follow/FollowScreen.tsx, κΈ°μ‘΄ src/apis/follow/followApi.ts, κΈ°μ‘΄ src/hooks/follow/*, κΈ°μ‘΄ src/components/follow/* |
νλ‘μ λͺ©λ‘μ κ΄κ³ μν λλ follow-back μ μ± νμΈ |
| μ€μ /λ‘κ·Έμμ UI | λ‘κ·Έμμ λ²νΌ, κ³μ μν, μ΄μ μλ΄κΉμ§ ꡬνλ¨. μ΄μ λ§ν¬μ μμΈ μλ΄λ λ―Έμμ± | C:/MainFE/src/pages/option/OptionPage.tsx |
κΈ°μ‘΄ src/pages/option/OptionScreen.tsx, κΈ°μ‘΄ src/utils/auth.ts |
λ‘κ·Έμμ μ μ± μ μ§ |
| λ°°μ‘ μ μ² | λ°°μ‘ μ λ ₯ νΌκ³Ό μ μΆμ ꡬνλ¨. μ£Όμ κ²μκ³Ό μ£Όλ¬Έ μ‘°νλ λ―Έμμ± | C:/MainFE/src/pages/delivery/DeliveryPage.tsx, C:/MainFE/src/components/delivery/* |
κΈ°μ‘΄ src/pages/delivery/DeliveryScreen.tsx, κΈ°μ‘΄ src/components/delivery/*, κΈ°μ‘΄ src/apis/delivery/deliveryApi.ts |
μ£Όμ κ²μ λ°©μ νμ |
| λ°°μ‘ μλ£ | μλ£ νλ©΄κ³Ό ν λ³΅κ· νλ¦μ ꡬνλ¨ | C:/MainFE/src/pages/delivery/CompletePage.tsx |
κΈ°μ‘΄ src/pages/delivery/DeliveryCompleteScreen.tsx |
λ°°μ‘ μν μ‘°ν API νμΈ |
| μ μ νμ₯/μ κΈ ν΄μ | body μλ unlock νΈμΆκ³Ό ν μ¬μ‘°νκ° κ΅¬νλ¨ | C:/MainFE/src/pages/delivery/UnlockGardenPlotPage.tsx, C:/MainFE/src/components/delivery/* |
κΈ°μ‘΄ src/pages/delivery/UnlockGardenScreen.tsx, κΈ°μ‘΄ src/components/delivery/*, κΈ°μ‘΄ src/apis/delivery/deliveryApi.ts |
ν νλ©΄ μ°κ²°μ μ μ |
| λ±λ‘ νλ‘μ° μμ | μμ νλ©΄κ³Ό mode μ ν, λ¨κ³ μ΄λμ ꡬνλ¨ | C:/MainFE/src/pages/registration/AvatarCreationPage.tsx, C:/MainFE/src/components/registration/*, C:/MainFE/src/apis/avatars/avatarApi.ts |
κΈ°μ‘΄ src/pages/registration/RegistrationAvatarScreen.tsx, κΈ°μ‘΄ src/components/registration/*, κΈ°μ‘΄ src/stores/useRegistrationStore.ts |
μ κ· μ μ μλ μ§μ μ μ± νμ |
| μμ±ν λ±λ‘ μμΈ | μ΄λ―Έμ§ μ νκ³Ό μ λ‘λ, μν μ μ₯μ ꡬνλ¨ | C:/MainFE/src/pages/registration/CreationDetailPage.tsx |
κΈ°μ‘΄ src/pages/registration/RegistrationCreationDetailScreen.tsx, κΈ°μ‘΄ src/stores/useRegistrationStore.ts, κΈ°μ‘΄ src/apis/avatars/avatarApi.ts |
κΈ°κΈ° κΆν UX 보μ |
| μ νν λ±λ‘ μμΈ | μλ°ν λͺ©λ‘ μ‘°νμ μ νμ ꡬνλ¨ | C:/MainFE/src/pages/registration/SelectionDetailPage.tsx, C:/MainFE/src/apis/avatars/avatarApi.ts |
κΈ°μ‘΄ src/pages/registration/RegistrationSelectionDetailScreen.tsx, κΈ°μ‘΄ src/apis/avatars/avatarApi.ts, κΈ°μ‘΄ src/hooks/avatars/useAvatarApi.ts |
GET /api/v1/avatars/masters κ³μ½ μ μ§ |
| μλ¬Ό λ³λͺ μ§κΈ° | λ³λͺ
μ
λ ₯κ³Ό μλ£ νλ¦μ ꡬνλ¨. μμ±ν/μ νν λͺ¨λ POST /api/v1/avatarsλ‘ μ°κ²°λ¨ |
C:/MainFE/src/pages/registration/PlantNicknamePage.tsx, C:/MainFE/src/apis/avatars/avatarApi.ts |
κΈ°μ‘΄ src/pages/registration/RegistrationPlantNicknameScreen.tsx, κΈ°μ‘΄ src/apis/avatars/avatarApi.ts, κΈ°μ‘΄ src/hooks/avatars/useAvatarApi.ts |
μ κ· μ μ λΆκΈ° μ μ± νμΈ |
| λ°μΌλ¦¬ λ―Έμ μΌκΈ° μμ± | ν μ€νΈ μ λ ₯, κ³΅κ° μ€μ , μ μΆ κ΅¬μ‘°λ ꡬνλ¨. μ΄λ―Έμ§ μ λ‘λ-μΌκΈ° μ μ₯μ λ―Έμμ± | C:/MainFE/src/pages/dailyMission/WriteDiaryPage.tsx, C:/MainFE/src/components/dailyMission/*, C:/MainFE/src/apis/missions/* |
κΈ°μ‘΄ src/pages/dailyMission/DailyMissionWriteDiaryScreen.tsx, κΈ°μ‘΄ src/components/dailyMission/*, κΈ°μ‘΄ src/apis/missions/missionApi.ts, κΈ°μ‘΄ src/hooks/mission/useMissionApi.ts |
μΌκΈ° μμ± μ΅μ’ μ μΆ UX 보μ |
| λ°μΌλ¦¬ λ―Έμ κ°κ΄μ ν΄μ¦ | ν΄μ¦ μ‘°ν, μ νμ§ λ λλ§, λ΅μ μ μΆ, κ²°κ³Ό νμκ° κ΅¬νλ¨ | C:/MainFE/src/pages/dailyMission/MultipleChoiceQuestionQuizPage.tsx, C:/MainFE/src/components/dailyMission/*, C:/MainFE/src/apis/missions/* |
κΈ°μ‘΄ src/pages/dailyMission/DailyMissionQuizMultipleChoiceScreen.tsx, κΈ°μ‘΄ src/components/dailyMission/*, κΈ°μ‘΄ src/apis/missions/missionApi.ts |
GET/POST /api/v1/realQuiz κ³μ½ μ μ§ |
| λ°μΌλ¦¬ λ―Έμ OX ν΄μ¦ | ν΄μ¦ μ‘°ν, O/X μ ν, λ΅μ μ μΆ, κ²°κ³Ό νμκ° κ΅¬νλ¨ | C:/MainFE/src/pages/dailyMission/OxQuizPage.tsx, C:/MainFE/src/components/dailyMission/*, C:/MainFE/src/apis/missions/* |
κΈ°μ‘΄ src/pages/dailyMission/DailyMissionQuizOxScreen.tsx, κΈ°μ‘΄ src/components/dailyMission/*, κΈ°μ‘΄ src/apis/missions/missionApi.ts |
OXμ κ°κ΄μ κ³΅ν΅ quiz κ³μ½ μ μ§ |
| λ°μΌλ¦¬ λ―Έμ μ€λμ μ§λ¬Έ | survey μ‘°ν, YES/NEUTRAL/NO λ΅λ³ μ μΆ, ν μλ£ μν λ°μμ΄ κ΅¬νλ¨ | C:/MainFE/src/pages/dailyMission/*, C:/MainFE/src/apis/missions/* |
κΈ°μ‘΄ src/pages/dailyMission/DailyMissionCheckingScreen.tsx, κΈ°μ‘΄ src/apis/missions/missionApi.ts, κΈ°μ‘΄ src/hooks/mission/useMissionApi.ts |
μλ΅ λ¬Έκ΅¬/보μ λ ΈμΆ μ μ± νμ |
- κΈ°λ₯λͺ : μ€μ νλ©΄ λ‘κ·Έμμ μ°κ²°
- νμ¬ MainAPP μν: μλ£. μ€μ νλ©΄μμ λ‘κ·Έμμ λ²νΌκ³Ό μ€λ³΅ ν΄λ¦ λ°©μ§κ° μ°κ²°λ¨
- μ°Έμ‘°ν MainFE νμΌ:
C:/MainFE/src/pages/option/OptionPage.tsx - νμν MainAPP λμ νμΌ λλ μ κ· νμΌ: κΈ°μ‘΄
src/pages/option/OptionScreen.tsx - μ ν쑰건: μμ
- κΈ°λ₯λͺ : 401/403 μ΄ν μ¬μ©μ κ²½ν μ 리
- νμ¬ MainAPP μν: ν ν° μ κ±° λ° μΈμ¦ ν΄μ λ λμ§λ§ μλ΄ UIμ κ³΅ν΅ μ²λ¦¬ λ©μμ§λ μμ
- μ°Έμ‘°ν MainFE νμΌ:
C:/MainFE/AUTH_INTEGRATION_CHECKLIST.md - νμν MainAPP λμ νμΌ λλ μ κ· νμΌ: κΈ°μ‘΄
src/apis/instance.ts, νμ μ μ κ·src/components/common/* - μ ν쑰건: μμ
- κΈ°λ₯λͺ : OAuth/λΉνμ λ±λ‘ μ΄ν μ κ· μ μ νμ νλ‘μ° λͺ μ
- νμ¬ MainAPP μν: OAuth
newUserλRegistrationAvatarλ‘ resetλκ³ , λΉνμ λ±λ‘λ λ±λ‘ νλ‘μ°λ‘ μ§μ ν¨. λ€λ§ μ€λ μ΄ν ν μ¬μ§μ μ μ± μ νμ λμ§ μμ - μ°Έμ‘°ν MainFE νμΌ:
C:/MainFE/AUTH_INTEGRATION_CHECKLIST.md - νμν MainAPP λμ νμΌ λλ μ κ· νμΌ: κΈ°μ‘΄
src/hooks/auth/useSupabaseOAuth.ts, κΈ°μ‘΄src/pages/register/RegisterScreen.tsx, ν₯ν λ±λ‘ νλ‘μ° νλ©΄λ€ - μ ν쑰건: λ±λ‘ νλ‘μ° λͺ©ν νλ©΄ ꡬ쑰 ν©μ
- κΈ°λ₯λͺ : ν λ©μΈ νλ©΄ λ° ν¨λ
- νμ¬ MainAPP μν:
HomeScreenμ΄/api/v1/homeμλ΅ κΈ°μ€ μμ½ UIλ₯Ό λ λλ§νκ³ ,missionTypeκΈ°λ°μΌλ‘ μ€μ λ―Έμ νλ©΄μ μ°κ²°ν¨ - μ°Έμ‘°ν MainFE νμΌ:
C:/MainFE/src/pages/home/Homepage.tsx,C:/MainFE/src/apis/home/homeApi.ts,C:/MainFE/src/apis/missions/panelApi.ts - νμν MainAPP λμ νμΌ λλ μ κ· νμΌ: κΈ°μ‘΄
src/pages/home/HomeScreen.tsx, κΈ°μ‘΄src/apis/home/homeApi.ts, κΈ°μ‘΄src/hooks/home/useHomeApi.ts, νμ μ μ κ·src/components/home/* - μ ν쑰건: MainBE ν/ν¨λ API νμΈ
- κΈ°λ₯λͺ : λ‘κ·Έ μμΈ νλ©΄
- νμ¬ MainAPP μν: μ€μ μμΈ νλ©΄κ³Ό λκΈ μ λ ₯μ΄ μ°κ²°λ¨
- μ°Έμ‘°ν MainFE νμΌ:
C:/MainFE/src/pages/log/LogDetailPage.tsx - νμν MainAPP λμ νμΌ λλ μ κ· νμΌ: κΈ°μ‘΄
src/pages/log/LogDetailScreen.tsx, κΈ°μ‘΄src/apis/log/diaryDetailApi.ts, κΈ°μ‘΄src/hooks/log/useDiaryDetailApi.ts - μ ν쑰건: μμ
- κΈ°λ₯λͺ : νΌλ μμΈ UX λ° μνΈμμ© λ³΄κ°
- νμ¬ MainAPP μν: μ‘°νμ λκΈ μμ±μ κ°λ₯νλ νλ‘ν/μ’μμ/μ κ³ λ± μμ κΈ°λ₯μ΄ λ―Έμμ±
- μ°Έμ‘°ν MainFE νμΌ:
C:/MainFE/src/pages/feed/FeedDiaryPage.tsx,C:/MainFE/src/pages/feed/FeedAvatarPage.tsx,C:/MainFE/src/components/feed/*,C:/MainFE/src/components/common/Comment.tsx - νμν MainAPP λμ νμΌ λλ μ κ· νμΌ: κΈ°μ‘΄
src/pages/feed/FeedDiaryScreen.tsx, κΈ°μ‘΄src/pages/feed/FeedAvatarScreen.tsx, κΈ°μ‘΄src/components/feed/FeedDetail.tsx, κΈ°μ‘΄src/components/common/Comment.tsx - μ ν쑰건: νλ‘ν νλ©΄ μ€νκ³Ό μ’μμ/μ κ³ API νμΈ
- κΈ°λ₯λͺ : λ‘κ·Έ λ΄ λ―Έμ ν μμΈ μ°κ²°
- νμ¬ MainAPP μν: μΊλ¦°λλ λ λλ§λλ λ μ§ μ ν ν μ‘μ μ΄ μμ
- μ°Έμ‘°ν MainFE νμΌ:
C:/MainFE/src/pages/log/LogPage.tsx,C:/MainFE/src/components/log/* - νμν MainAPP λμ νμΌ λλ μ κ· νμΌ: κΈ°μ‘΄
src/components/log/LogCalendar.tsx, κΈ°μ‘΄src/pages/log/LogScreen.tsx - μ ν쑰건: λ μ§ μ ν μ 보μ¬μ€ μ 보 ꡬ쑰 νμ
- κΈ°λ₯λͺ : μ¬μ©μ νλ‘ν μ‘°ν λ° μΉκ΅¬ λ¬Όμ£ΌκΈ°
- νμ¬ MainAPP μν: μ¬μ©μ μ‘°ν, λν μ μ, λ¬Όμ£ΌκΈ°, νλ‘μ°/μΈνλ‘μ°κΉμ§ ꡬνλ¨
- μ°Έμ‘°ν MainFE νμΌ:
C:/MainFE/src/pages/profile/ProfilePage.tsx,C:/MainFE/src/apis/profile/profileApi.ts,C:/MainFE/src/components/profile/* - νμν MainAPP λμ νμΌ λλ μ κ· νμΌ: κΈ°μ‘΄
src/pages/profile/ProfileScreen.tsx, κΈ°μ‘΄src/apis/profile/profileApi.ts, κΈ°μ‘΄src/hooks/profile/*, κΈ°μ‘΄src/components/profile/* - μ ν쑰건: νλ‘ν API νμΈ
- κΈ°λ₯λͺ : νλ‘μ° λͺ©λ‘ λ° κ΄λ¦¬
- νμ¬ MainAPP μν: λͺ©λ‘ μ‘°ν, ν μ ν, νλ‘μ μΈνλ‘μ°, νλ‘ν μ΄λκΉμ§ ꡬνλ¨
- μ°Έμ‘°ν MainFE νμΌ:
C:/MainFE/src/pages/follow/FollowPage.tsx,C:/MainFE/src/apis/follow/followApi.ts,C:/MainFE/src/components/follow/* - νμν MainAPP λμ νμΌ λλ μ κ· νμΌ: κΈ°μ‘΄
src/pages/follow/FollowScreen.tsx, κΈ°μ‘΄src/apis/follow/followApi.ts, κΈ°μ‘΄src/hooks/follow/* - μ ν쑰건: νλ‘μ° API νμΈ
- κΈ°λ₯λͺ : μ€μ /μ΅μ
- νμ¬ MainAPP μν: λ‘κ·Έμμκ³Ό κ³μ μν νμΈμ κ°λ₯, μ΄μ λ§ν¬λ λ―Έμμ±
- μ°Έμ‘°ν MainFE νμΌ:
C:/MainFE/src/pages/option/OptionPage.tsx - νμν MainAPP λμ νμΌ λλ μ κ· νμΌ: κΈ°μ‘΄
src/pages/option/OptionScreen.tsx - μ ν쑰건: λ‘κ·Έμμ λ²νΌ μ μ± νμ
- κΈ°λ₯λͺ : λ°°μ‘ μ μ² νΌ
- νμ¬ MainAPP μν: κΈ°λ³Έ λ°°μ‘ μ λ ₯κ³Ό μ μΆμ΄ ꡬνλ¨
- μ°Έμ‘°ν MainFE νμΌ:
C:/MainFE/src/pages/delivery/DeliveryPage.tsx,C:/MainFE/src/components/delivery/* - νμν MainAPP λμ νμΌ λλ μ κ· νμΌ: κΈ°μ‘΄
src/pages/delivery/DeliveryScreen.tsx, κΈ°μ‘΄src/components/delivery/*, κΈ°μ‘΄src/apis/delivery/deliveryApi.ts - μ ν쑰건: λ°°μ‘ API νμΈ
- κΈ°λ₯λͺ : λ°°μ‘ μλ£ νλ©΄
- νμ¬ MainAPP μν: μλ£ λ©μμ§μ ν λ³΅κ· λ²νΌμ΄ ꡬνλ¨
- μ°Έμ‘°ν MainFE νμΌ:
C:/MainFE/src/pages/delivery/CompletePage.tsx - νμν MainAPP λμ νμΌ λλ μ κ· νμΌ: κΈ°μ‘΄
src/pages/delivery/DeliveryCompleteScreen.tsx - μ ν쑰건: λ°°μ‘ μ μ² νλ‘μ° κ΅¬ν
- κΈ°λ₯λͺ : μ μ μ κΈ ν΄μ /νμ₯
- νμ¬ MainAPP μν:
POST /api/v1/gardens/unlockbody μλ νΈμΆκ³Ό ν μ¬μ‘°νκ° κ΅¬νλ¨ - μ°Έμ‘°ν MainFE νμΌ:
C:/MainFE/src/pages/delivery/UnlockGardenPlotPage.tsx,C:/MainFE/src/components/delivery/* - νμν MainAPP λμ νμΌ λλ μ κ· νμΌ: κΈ°μ‘΄
src/pages/delivery/UnlockGardenScreen.tsx, κΈ°μ‘΄src/components/delivery/*, κΈ°μ‘΄src/apis/delivery/deliveryApi.ts - μ ν쑰건: ν νλ©΄ μ°κ²°μ μ μ
- κΈ°λ₯λͺ : μλ°ν μ ν, μμ±ν/μ νν μμΈ, μλ¬Ό λ³λͺ
- νμ¬ MainAPP μν: λ¨κ³λ³ νλ©΄κ³Ό μν μ μ₯, μμ±ν μ λ‘λ, μ΅μ’ λ±λ‘κΉμ§ ꡬνλ¨
- μ°Έμ‘°ν MainFE νμΌ:
C:/MainFE/src/pages/registration/AvatarCreationPage.tsx,C:/MainFE/src/pages/registration/CreationDetailPage.tsx,C:/MainFE/src/pages/registration/SelectionDetailPage.tsx,C:/MainFE/src/pages/registration/PlantNicknamePage.tsx,C:/MainFE/src/components/registration/*,C:/MainFE/src/apis/avatars/avatarApi.ts - νμν MainAPP λμ νμΌ λλ μ κ· νμΌ: κΈ°μ‘΄
src/pages/registration/*, κΈ°μ‘΄src/components/registration/*, κΈ°μ‘΄src/apis/avatars/avatarApi.ts, κΈ°μ‘΄src/hooks/avatars/useAvatarApi.ts, κΈ°μ‘΄src/stores/useRegistrationStore.ts - μ ν쑰건: μ κ· μ μ λΆκΈ° κ·μΉκ³Ό λ±λ‘ νλ‘μ° μν μ μ₯ μ λ΅ νμ
- κΈ°λ₯λͺ : μΌκΈ° μμ±, κ°κ΄μ ν΄μ¦, OX ν΄μ¦, μ€λμ μ§λ¬Έ
- νμ¬ MainAPP μν: ν΄μ¦μ μ€λμ μ§λ¬Έμ ꡬν, μΌκΈ° μμ±μ μ΅μ’ μ΄λ―Έμ§ μ λ‘λ-μ μ₯ μ°κ²°λ§ λ―Έμμ±
- μ°Έμ‘°ν MainFE νμΌ:
C:/MainFE/src/pages/dailyMission/WriteDiaryPage.tsx,C:/MainFE/src/pages/dailyMission/MultipleChoiceQuestionQuizPage.tsx,C:/MainFE/src/pages/dailyMission/OxQuizPage.tsx,C:/MainFE/src/components/dailyMission/*,C:/MainFE/src/apis/missions/* - νμν MainAPP λμ νμΌ λλ μ κ· νμΌ: κΈ°μ‘΄
src/pages/dailyMission/*, κΈ°μ‘΄src/components/dailyMission/*, κΈ°μ‘΄src/apis/missions/missionApi.ts, κΈ°μ‘΄src/hooks/mission/useMissionApi.ts - μ ν쑰건: μΌκΈ° μμ± μ λ‘λ-μ μ₯ UX λ§λ¬΄λ¦¬
src/pages/home/HomeScreen.tsxκΈ°μ€ ν μνΈμμ© κΈ°λ³Έ μ°κ²°μ λλ¬κ³ , λ¨μ μμ μ μ€κΈ°κΈ° μ€μμ΄ν νμΈ, μμ μμ/μμ νλ©΄ μ κ², 문ꡬ/κ°κ²© λ§κ°, λ¬Ό/νλΉ API κ³μ½ μμΈ νμΈμ΄λ€.src/pages/log/LogDetailScreen.tsxμ΄ν, μμ κΈ°λ₯κ³Ό λ―Έμ ν μμΈ μ°κ²°μ 보μνλ€.- νΌλ μμΈμ μ’μμ/μ κ³ /νλ‘ν μ€νλ©΄ μ°κ²° λ± λ―Έμμ± μμ μνΈμμ©μ μ 리νλ€.
- νμν ν/νΌλ 보쑰 APIμ ν μ μΆκ°νλ€.
Profileκ³ΌFollowνλ μ΄μ€νλ κ΅μ²΄λ μλ£λμλ€.- νΌλ μμΈ μμ±μ νκ³Ό νλ‘μ° νλ©΄ μ§μ λ²νΌκΉμ§ μ€μ λ€λΉκ²μ΄μ μ°κ²°μ΄ μλ£λμλ€.
- μ΄ν λ¨μ μμ μ λ°©λͺ λ‘, νλ‘μ follow-back, μΆκ° νλ‘ν μνΈμμ© κ°μ μΈλΆ κΈ°λ₯ 보κ°μ΄λ€.
Delivery,DeliveryComplete,UnlockGardenνλ μ΄μ€νλ κ΅μ²΄λ μλ£λμλ€.- ν νλ©΄μμ
UnlockGardenμΌλ‘ μ΄μ΄μ§λ μ°κ²°μ κ³Ό λ°°μ‘ μλ£ ν ν λ³΅κ· νλ¦μ΄ μ 리λμλ€. - μ΄ν λ¨μ μμ μ μ£Όμ κ²μκ³Ό λ°°μ‘ μν μ‘°νλ€.
RegistrationAvatar,RegistrationCreationDetail,RegistrationSelectionDetail,RegistrationPlantNicknameνλ μ΄μ€νλ κ΅μ²΄λ μλ£λμλ€.- λΉνμ λ±λ‘ μ§μ κ³Ό OAuth μ κ· μ μ λΆκΈ° μ°κ²° ν¬μΈνΈκ° μ 리λμλ€.
- μ΄ν λ¨μ μμ μ μ κ· μ μ κ°μ μ§μ μ μ± νμ κ³Ό μμ±ν μ λ‘λ UX 보μμ΄λ€.
DailyMissionWriteDiary,DailyMissionQuizMultipleChoice,DailyMissionQuizOx,DailyMissionCheckingνλ©΄μ΄ μ€μ λ‘ μ°κ²°λμλ€.- νμμ λ―Έμ νλ©΄μΌλ‘ μ§μ νλ μ°κ²°μ κ³Ό ν΄μ¦/μ€λμ μ§λ¬Έ μ μΆ νλ¦μ΄ μ 리λμλ€.
- μ΄ν λ¨μ μμ μ μΌκΈ° μμ± μ΅μ’ μ λ‘λ-μ μ₯ μ°κ²°κ³Ό μ΄μ 보μ μ±κ²©μ μ μ± μ 리λ€.
- μΈμ¦, μ¨λ³΄λ©, λ‘κ·ΈμΈ, μ¬μ€ν μΈμ 볡μ, λ‘κ·Έμμ
- ν μ£Όμ μ§μ
μ ,
panelκΈ°λ° λ―Έμ μνΈ, κ°μ 체ν¬, λ¬Ό/νλΉ μ‘μ , νΌλ/λ‘κ·Έ μμΈ, νλ‘ν/νλ‘μ° - μ μ ν΄κΈ, λ°°μ‘ μ μ²/μλ£
- λ±λ‘ νλ‘μ° κΈ°λ³Έ ꡬ쑰μ μμ±ν μ λ‘λ
- λ°μΌλ¦¬ λ―Έμ μ§μ , ν΄μ¦ μλ΅, μ€λμ μ§λ¬Έ μλ΅
- ν UI λ§κ°κ³Ό μ€κΈ°κΈ° κ²μ¦
- νΌλ μμ μ‘μ (μ’μμ/μ κ³ /λκΈ μμ μμ )
- νλ‘ν λ°©λͺ λ‘/λ€μ€ μ μ
- λ°°μ‘ μ£Όμ κ²μκ³Ό λ°°μ‘ μ‘°ν
- λΉνμ λ±λ‘/μ κ· μ μ μ μ±
- λ°μΌλ¦¬ λ―Έμ μΌκΈ° μμ± μ΅μ’ μ μΆ
- μ€μ μ μ΄μ λ§ν¬/λ²μ μλ νκΈ°
- μ κ· μ μ κ° λ±λ‘ νλ‘μ°λ₯Ό μ€λ μ΄ννμ λ μ¬μ§μ μ κ°μ ν μ§ μ¬λΆ
- λΉνμ λ±λ‘ μ€ν¨ μμλ λ±λ‘ νλ‘μ°λ‘ μ§μ μν€λ νμ¬ λμμ μ μ§ν μ§ μ¬λΆ
- μ€λμ μ§λ¬Έ μλ£ ν 보μ/μλ΄ λ¬Έκ΅¬λ₯Ό μ±μμ μ΄λ μμ€κΉμ§ λ ΈμΆν μ§ μ¬λΆ
- λ¬Ό/νλΉ μ‘μ API κ³μ½ μμΈ
- νλ‘μ λͺ©λ‘μ follow-back νλ¨μ© κ΄κ³ μν
- λ°°μ‘ μν μ‘°νμ μ£Όμ κ²μ λ체 μ μ±
- λ°μΌλ¦¬ λ―Έμ μΌκΈ° μμ±μ μ΅μ’ μ μ₯ UX μ μ±
- μ€μ νλ©΄μ μ½κ΄/λ¬Έμ/λ²μ μλ΄ μ°κ²°
- μΈμ¦ μ€ν¨ κ³΅ν΅ μλ΄ UX
- 문ꡬ μΌκ΄νμ API μ€ν¨ λ©μμ§ λ€λ¬κΈ°
- λ°μΌλ¦¬ λ―Έμ μΌκΈ° μμ±μ μ΄λ―Έμ§ μ λ‘λ-μΌκΈ° μ μ₯ μ΅μ’ μ°κ²°μ΄ μμ§ μκ²°λμ§ μμλ€.
- λΉνμ λ±λ‘ μ€ν¨ μμλ λ±λ‘ νλ‘μ°λ‘ μ§μ μν€λ νμ¬ λμμ μ΄μ μ μ± νμ μ΄ νμνλ€.
- ν νλ©΄μ κΈ°λ³Έ μνΈμμ©μ΄ ꡬνλμ§λ§, λ¬Ό/νλΉ API κ³μ½ μμΈμ μ€κΈ°κΈ° λ μ΄μμ κ²μ¦ μ κΉμ§λ μ΄μ 리μ€ν¬κ° λ¨μ μλ€.
- λ°°μ‘ μ£Όμ κ²μκ³Ό λ°°μ‘ μν μ‘°νλ μμ§ μ±μμ μ§μ μ§μνμ§ μλλ€.
- MainFE μ’
λ£ μ΄ν κΈ°μ€ λ¬Έμλ μ΄ νμΌκ³Ό νμ¬
MainAPPμ½λμ΄λ©°, λ¨μ 보μμ μ μ± /μ΄μ νμ νMainAPPμμ κ³μ κ°±μ νλ€.
src/pages/onboarding/OnboardingScreen.tsxsrc/pages/register/RegisterScreen.tsxsrc/pages/home/HomeScreen.tsxsrc/pages/log/LogScreen.tsxsrc/pages/log/LogDetailScreen.tsxsrc/pages/feed/FeedScreen.tsxsrc/pages/feed/FeedDiaryScreen.tsxsrc/pages/feed/FeedAvatarScreen.tsxsrc/pages/profile/ProfileScreen.tsxsrc/pages/follow/FollowScreen.tsxsrc/pages/delivery/UnlockGardenScreen.tsxsrc/pages/delivery/DeliveryScreen.tsxsrc/pages/delivery/DeliveryCompleteScreen.tsxsrc/pages/registration/RegistrationAvatarScreen.tsxsrc/pages/registration/RegistrationCreationDetailScreen.tsxsrc/pages/registration/RegistrationSelectionDetailScreen.tsxsrc/pages/registration/RegistrationPlantNicknameScreen.tsxsrc/pages/dailyMission/DailyMissionWriteDiaryScreen.tsxsrc/pages/dailyMission/DailyMissionQuizMultipleChoiceScreen.tsxsrc/pages/dailyMission/DailyMissionQuizOxScreen.tsxsrc/pages/dailyMission/DailyMissionCheckingScreen.tsxsrc/pages/option/OptionScreen.tsx
src/pages/option/OptionScreen.tsxsrc/pages/dailyMission/DailyMissionWriteDiaryScreen.tsx
src/components/common/Splash.tsxsrc/components/common/Comment.tsxsrc/components/common/ScreenHeader.tsxsrc/components/common/StatusView.tsxsrc/components/feed/FeedList.tsxsrc/components/feed/FeedDetail.tsxsrc/components/log/LogCalendar.tsxsrc/components/log/MyDiary.tsxsrc/components/profile/ProfileDetail.tsxsrc/components/follow/UserCard.tsxsrc/components/delivery/PlantOptionCard.tsxsrc/components/delivery/GardenSlotCard.tsxsrc/components/delivery/DeliveryTextField.tsxsrc/components/delivery/DeliveryRequestSelector.tsxsrc/components/registration/AvatarPreviewCard.tsxsrc/components/registration/RegistrationFooter.tsxsrc/components/registration/RegistrationModeCard.tsxsrc/components/registration/SelectionAvatarCard.tsxsrc/components/registration/RegistrationTextField.tsxsrc/components/dailyMission/ImageAttachmentCard.tsxsrc/components/dailyMission/QuizOptionCard.tsxsrc/components/dailyMission/QuizResultCard.tsx
src/apis/feed/feedApi.tssrc/apis/feed/avatarPostDetailApi.tssrc/apis/comments/commentApi.tssrc/apis/log/calendarApi.tssrc/apis/log/diariesApi.tssrc/apis/log/diaryDetailApi.tssrc/apis/profile/profileApi.tssrc/apis/follow/followApi.tssrc/apis/delivery/deliveryApi.tssrc/apis/avatars/avatarApi.tssrc/apis/missions/missionApi.tssrc/apis/register/registerApi.tssrc/apis/instance.ts