Portfolio · Mobile App

내 음악을
어디서나, 내 방식대로

MelodyStream은 흩어져 있는 개인 음악 라이브러리를 클라우드 한 곳에서 관리하고, 스마트 플레이리스트와 오프라인 재생까지 지원하는 React Native 기반 프리미엄 음악 앱입니다.

React Native TypeScript Firebase Android Expo
기획 · 설계 단계
9:41 ●●●
Midnight Groove
junetapa
1:424:08
Problem · Solution

왜 또 하나의 음악 앱인가?

기존 스트리밍 서비스는 플랫폼 음원만 재생합니다. 직접 구매했거나 DAW로 만든 내 음악은 어디에도 깔끔하게 두지 못하죠. MelodyStream은 이 빈자리를 채웁니다.

!현재의 문제

  • 구매한 FLAC/WAV 파일이 PC 폴더에 방치됨
  • DAW로 만든 내 음원은 스트리밍 앱에 올릴 수 없음
  • 여러 기기에 같은 라이브러리를 동기화하기 번거로움
  • 오프라인 재생과 고음질(Lossless) 지원이 제각각

MelodyStream의 접근

  • Firebase Storage 기반 개인 클라우드 라이브러리
  • TypeScript + React Native로 iOS/Android 동시 대응
  • Firestore 메타데이터 + 오프라인 캐시 전략
  • 16/24bit Lossless 스트리밍 및 이퀄라이저 내장
Key Features

6가지 핵심 기능

단순 재생을 넘어, 개인화된 음악 경험을 만드는 기능들입니다.

☁️

클라우드 라이브러리

Firebase Storage에 원본 파일 보관, 모든 기기에서 같은 라이브러리로 접근.

🎧

Lossless 스트리밍

FLAC/WAV 원음 그대로 재생, 네트워크 상태에 따른 자동 비트레이트 전환.

스마트 플레이리스트

재생 이력·BPM·무드 기반의 자동 플레이리스트 생성. 오늘의 기분을 읽습니다.

⬇️

오프라인 모드

선택한 앨범을 기기 로컬에 암호화 캐시. 지하철·비행기에서도 끊김 없이 재생.

🎚️

10밴드 EQ

사전 프리셋과 커스텀 EQ 저장, 장르별 최적 사운드를 한 번 설정으로.

🔄

실시간 동기화

Firestore 실시간 리스너로 재생 상태·플레이리스트를 모든 기기 즉시 반영.

Architecture

시스템 구조

모바일 클라이언트와 Firebase BaaS(Backend as a Service)를 중심으로 구성한 단순하지만 단단한 설계.

Client Layer
UIReact Native
LanguageTypeScript
NavigationExpo Router
StateZustand
Service Layer
Audioreact-native-track-player
CacheMMKV Storage
AnalyticsFirebase Analytics
CrashCrashlytics
Backend · Firebase BaaS
AuthFirebase Auth
FilesCloud Storage
DBFirestore
LogicCloud Functions
Tech Stack

기술 선택 이유

개인 프로젝트 스케일에서 유지보수·개발속도·확장성의 균형을 잡는 조합.

React Native (Expo)

단일 코드베이스로 Android·iOS 동시 배포. Expo는 네이티브 빌드 세팅 부담을 줄여 기획·UI·기능 구현에 집중할 수 있습니다.

Firebase

개인 프로젝트에서 백엔드를 직접 운영하는 부담 제거. Auth · Storage · Firestore · Functions 를 한 번에 해결하고 무료 티어로 MVP 검증 가능.

TypeScript

재생 상태·트랙 메타데이터처럼 형태가 복잡한 도메인에서 런타임 버그를 컴파일 타임에 잡아냅니다. 협업·리팩토링 비용을 크게 낮춥니다.

Android First

초기 릴리스는 Play Store Internal Testing으로 빠르게 검증. iOS는 Expo 빌드 파이프라인이 갖춰진 이후 동시 배포로 확장합니다.

Roadmap

개발 로드맵

기획 → MVP → 베타 → 정식 출시로 이어지는 단계별 목표.

Phase 1 · Now

기획 · 설계

요구사항 정의, 화면 설계, Firebase 데이터 스키마 확정, 아키텍처 문서화.

Phase 2

MVP — 재생 엔진 & 라이브러리

업로드, 재생, 플레이리스트, 인증까지. Android 내부 테스트 트랙 배포.

Phase 3

Beta — 스마트 기능

오프라인 캐시, EQ, 자동 플레이리스트, 실시간 동기화. 30명 베타 테스터.

Phase 4

Launch — Play Store 정식 출시

Play Store Production. iOS 빌드 확장 및 App Store 심사 진행.

다른 프로젝트도 살펴보세요

MelodyStream은 junetapa 모바일 포트폴리오의 일부입니다.

모바일 포트폴리오 전체 보기 프로젝트 문의