플레이리스트 공유만을 위한 플랫폼
이거 하면서 새로 배운점
- 데이터 저장: recoil과 localstorage를 이용해서 먼저 구현 후 추후에 lowdb로 전환 예정
- 유튜브 플레이리스트 영상
- 영상 편집이 필요하다
- 플레이리스트 전체를 관통하는 영상을 만들 수 있지만
- 간단하게 플레이리스트만 제작하고픈 사람에게는 불편하다
- 제작자가 곡 정보를 적어두지 않는 경우가 있다
- "이 노래 뭐지?" 싶을 때 바로 찾아보기 힘들다
- 가사를 보기 힘들다
- 단일 곡 영상은 자막이나 설명란, 댓글에 있는 경우가 많지만
- 플레이리스트 영상은 그렇지 않음
- 물론, playmix에서도 플레이리스트 제작자가 가사를 함께 첨부해야 하겠지만
- 일단 첨부해놓기만 하면, 재생 중인 노래의 가사를 바로 볼 수 있다는 장점이 있다
- 영상 편집이 필요하다
- 유튜브 자체 플레이리스트 기능
- 순서를 바꾸기 불편하다
- 순서를 설정함에 있어 다양한 방법을 제공할 필요가 있다
- 유튜브에 없는 노래는 들을 수 없다
- 공유가 활발하지 않다
- 제작자와 코멘트도 있고 검색이 가능하지만
- 리스트보단 단일 영상 하나하나의 임팩트가 큰 유튜브라는 큰 플랫폼 내에서 존재가 미미하다고 생각 (실제로도 잘 모름)
- 관심사의 분리가 필요하지 않을까
- 순서를 바꾸기 불편하다
- 멜론, 유튜브 뮤직 등의 음악 앱
- 유료
- 유튜브 뮤직을 제외하면 음원으로 발매되지 않은 노래는 청취가 불가능하다
- 플레이리스트 관련 기능이 불편한 앱이 존재
- 유튜브 또는 사운드클라우드의 식별 아이디를 여러개 받아서 연속적으로 틀어준다
- 플레이리스트 생성/삭제
- 플레이리스트 내부 음악 추가/삭제
- 플레이리스트 소유자와 이용자 (owner & listeners)
- owner & users로 하면 일반 사용자를 의미하는 user와 혼동
- 기본적으로 소유자가 설정한 음악 순서를 따르지만 이용자가 순서를 바꿀 수도 있음
- 해당 작업은 이용자의 로컬 작업 (fork 느낌)
- 플레이리스트 구성요소
- 총 음악 개수와 소요시간
- 제목
- 설명
- 댓글, 좋아요
- *태그 (검색/분류 목적)
- *이용자가 소유자에게 음악 추가 건의
- 자신이 소유자인 플레이리스트 및 로컬 작업한 플레이리스트를 모아볼 수 있는 곳
(*은 미확정)
DB에서 관리?
[
{
"id": "",
"owner": "",
"urls": [""],
"title": "",
"description": "",
"likes?": 0,
"comments?": [{ "author": "", "content": "" }],
"tags??": []
}
]likes, comments는 나중에
tags는 더 나중에
당장 회원 기능까지 구현하기는 힘들 거 같음 일단 익명 시스템으로 만들고 차차 구현할 수 있지 않을까
[
{
"id": "",
"nickname": "",
"playlists": [
{ "type": "owned", "id": "" },
{ "type": "forked", "id": "", "urls": [] }
]
}
]npm run devFirst, build your app for production:
npm run buildThen run the app in production mode:
npm startNow you'll need to pick a host to deploy it to.
If you're familiar with deploying node applications, the built-in Remix app server is production-ready.
Make sure to deploy the output of remix build
build/public/build/