Skip to content

RideThis는 실내외 어디서든 속도, 거리, 칼로리 등의 정보를 확인하고, 기록 분석과 경쟁을 통해 성장을 추적할 수 있습니다.

Notifications You must be signed in to change notification settings

APP-iOS5th/FinalProject-RideThis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚲 블루투스 라이딩 측정앱 RideThis

image

앱 스토어 URL: https://github.com/APP-iOS5th/FinalProject-RideThis/tree/main
시연영상 URL:
노션URL:


1. 프로젝트 소개

이 서비스는 케이던스 기기와 스마트폰 앱 간의 블루투스 통신을 통해 자전거 라이딩 데이터를 실시간으로 기록하고, 다양한 통계 정보를 제공하는 플랫폼입니다. 자전거에 부착된 케이던스 기기로부터 케이던스(분당 회전수) 데이터 정보를 앱이 받아와, 사용자는 라이딩 동안의 케이던스, 속도, 거리, 칼로리 데이터를 편리하게 확인할 수 있습니다. 이러한 데이터는 라이딩의 성과를 분석하고 향후 운동 계획을 세우는 데 큰 도움을 줍니다.

특히, 이 서비스는 단순한 기록 측정에서 그치지 않고, 게임 요소를 도입하여 운동의 재미를 더했습니다. 사용자는 특정 거리(Km)를 목표로 다른 사용자들과 경쟁할 수 있으며, 이를 통해 운동의 동기를 부여받고, 더 적극적으로 자전거 라이딩을 즐길 수 있습니다.

케이던스 기기와 앱의 블루투스 연결

  • 앱은 케이던스 기기와 블루투스를 통해 연결되며, 자전거 라이딩 중 실시간으로 데이터를 수집합니다.

라이딩 기록 측정 및 이력 확인

  • 사용자는 라이딩 중 다양한 데이터를 기록할 수 있습니다. - 측정되는 주요 데이터: 시간, 거리, 속도, 케이던스, 칼로리
  • 이러한 데이터를 바탕으로 각 라이딩 세션을 분석하고, 성과를 확인할 수 있습니다.

주기별 라이딩 기록 확인

  • 사용자는 1주, 1개월, 3개월, 6개월 단위로 자신의 라이딩 기록을 그래프 형태로 확인할 수 있습니다.
  • 이를 통해 기록 변화를 시각적으로 쉽게 파악할 수 있으며, 꾸준한 운동 목표를 세우고 성과를 체계적으로 관리할 수 있습니다.
  • 그래프는 장기적인 운동 패턴을 분석하는 데 유용하며, 개인의 발전 상황을 명확하게 시각화하여 사용자가 자신의 성과를 더욱 쉽게 이해할 수 있게 도와줍니다.

기록 비교 및 공유 기능

  • 사용자들은 자신의 라이딩 기록을 서버에 등록하여, 친구나 전체 사용자들과 기록을 비교할 수 있습니다.
  • 이를 통해 사용자 간에 자연스러운 경쟁이 형성되며, 운동의 재미를 더하고 서로 동기 부여가 됩니다.

이미지1 설명 이미지2 설명 이미지3 설명 이미지4 설명

이 서비스는 단순한 기록 기능을 넘어, 사용자들이 자전거 라이딩을 더 흥미롭게 즐길 수 있도록 지원합니다. 운동 데이터 기록소셜 경쟁 요소가 결합되어, 건강한 라이프스타일을 유지하는 데 도움을 주는 동시에, 더 즐겁게 운동할 수 있는 환경을 제공합니다.


2. 개발 기간

  • 개발 기간 : 2024-08-12 ~ 2024-08-30
  • 오류 수정 및 리팩토링 기간: 2024-09-01 ~ 2024-09-08

3. 개발 환경

개발 환경

  • Swift: 5.9
  • Xcode: 15.4
  • iOS: 16.6
  • Node.js: 22.5.1
  • Yarn: 1.22.22

기술 스택

  • iOS: UIKit
  • Server: Firebase + Express
  • Database: Firebase Database
  • Software Architecture: MVVM-C
  • 비동기 처리: Combine + Swift Concurrency

Dependencies

  • iOS
    • Kingfisher: 7.12.0
    • SnapKit: 5.7.1
    • DGChart: 5.1.0
    • Alamofire: 5.9.1
  • Node.js
    • TypeScript: 5.5.4
    • Express: 4.19.2
    • firebase-admin: 12.4.0
    • google-auth-library: 9.14.0

서버 설정 및 배포

  • 서버 설치: yarn install
  • 배포 환경: Vercel

협업 도구

  • Notion
  • Figma
  • GitHub
  • Discord

4. 팀원 및 역할 분담

팀원 구성

황규상 김성국 최광우 황승혜

@황규상

@김성국

@최광우

@황승혜

황규상

  • UI
    • 페이지 : 스플래시 뷰, 홈 화면, 장치 연결 탭 화면
  • 기능
    • 일/주/월간 기록, 운동바로가기 버튼, 오늘 날씨 출력, 팔로우 알림 목록, 케이던스 기기 목록 테이블, 케이던스 기기 검색, 장치 상세 화면, 휠 정보 화면, 휠 정보 저장

김성국

  • UI
    • 페이지 : 경쟁 탭 화면
  • 기능
    • 사용자 순위 목록, 거리 선택 드롭다운, 경쟁 거리 선택, 앱과 케이던스 연결, 케이던스 라이딩 데이터 측정, 기록 DB 저장

최광우

  • UI
    • 페이지 : 마이페이지 탭 화면
  • 기능
    • 로그인 화면, 추가정보 입력 화면, 로그인/회원탈퇴 기능, 회원 정보 수정, 사용자 검색/팔로우, 라이딩 통합 기록 표시 화면, 라이딩 통합 기록 기간별 그래프 표시

황승혜

  • UI
    • 페이지 : 라이딩 탭 화면
  • 기능
    • 라이딩 기록 화면, 라이딩 시작/Reset/정지/종료 버튼, 종합 라이딩 목록 화면, 라이딩 상세 기록 화면, 라이딩 요약 화면

About

RideThis는 실내외 어디서든 속도, 거리, 칼로리 등의 정보를 확인하고, 기록 분석과 경쟁을 통해 성장을 추적할 수 있습니다.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •