Skip to content

NewsHabit/iOS-v2

Repository files navigation

기존 NewsHabit 프로젝트Micro-Feature Architecture + MVVM-C 구조로 리팩토링한 레포지토리입니다.


⚒️ 기술 스택

용도 의존성 버전
아키텍처 Tuist 4.7.0
네트워크 Alamofire 5.8.1
네트워크 Kingfisher 7.0.0
UI FlexLayout 2.0.7
UI PinLayout 1.10.5

🗂️ 프로젝트 구조

Projects
├── App
   ├── Resources
   └── Sources (메인 앱 타겟)
├── Feature
   ├── ...
      ├── Examples (데모 앱을 위한 앱 타겟)
|      ├── Interface (공개 API를 정의하는 프레임워크 타겟)
      └── Sources (실제 구현을 포함하는 프레임워크 타겟)
├── Domain
   ├── ...
      ├── Interface (도메인 로직의 공개 API를 정의하는 프레임워크 타겟)
      └── Sources (도메인 로직 구현을 포함하는 프레임워크 타겟)
├── Core
   ├── ...
      ├── Interface (코어 기능의 공개 API를 정의하는 프레임워크 타겟)
      └── Sources (코어 기능 구현을 포함하는 프레임워크 타겟)
└── Shared
    ├── DesignSystem
       ├── Resources
       └── Sources (디자인 시스템 구현을 포함하는 프레임워크 타겟)
    ├── Util
       └── Sources (유틸리티 구현을 포함하는 프레임워크 타겟)
    └── ThirdPartyLib

✨ 주요 기능

온보딩

image image image
  • 사용자는 자신의 닉네임을 설정할 수 있다.
  • 사용자는 추천받고 싶은 기사의 카테고리를 설정할 수 있다.
  • 사용자는 추천받고 싶은 기사의 개수를 설정할 수 있다.

오늘의 뉴스

image image image
  • 사용자는 자신의 닉네임을 네비게이션 바 라지 타이틀에서 확인할 수 있다.
  • 사용자는 자신이 오늘의 뉴스를 모두 읽은 누적 일수를 네비게이션 바 서브 타이틀에서 확인할 수 있다.
  • 사용자는 자신이 설정한 데이터(카테고리, 개수)를 바탕으로 오늘의 뉴스 목록을 볼 수 있다.
  • 오늘의 뉴스를 모두 읽으면 알림 메시지가 표시되고, 오늘의 뉴스를 모두 읽은 날짜를 이달의 기록 뷰에서 확인할 수 있다.

지금 뜨는 뉴스

image image
  • 사용자는 실시간 인기 있는 뉴스 목록을 확인할 수 있다.
  • 사용자는 뉴스 목록을 새로고침할 수 있다.

설정

image image image image
  • 사용자는 자신의 닉네임을 수정할 수 있다.
  • 사용자는 추천받고 싶은 기사의 카테고리와 개수를 수정할 수 있다.
  • 사용자는 시간을 지정하여 알림을 허용할 수 있다.