git-push-hackathon
git-push-hackathon copied to clipboard
よろしくお願いします!
Appeal Point / アピールポイント
アプリやサービスを開発する際の大前提として誰かに使われないと意味がないと思っています。 そのため、まずは Youtube のプレイリストを使っているかや、使っている場合はどのようにしているかを周りの友達などにヒアリングしました。 結果として、今回のアプリを使う対象を
- 中学生から大学生
- サークルなどでダンスをしている
としました。
今回のアプリを一言で表すと「ダンスの練習に使える音楽連続再生アプリ」とです。 これは通常のYoutubeのプレイリスト再生ではローディング時間を要するため、一瞬間ができるとともに、音楽は最初から最後までを流すことしかできません。 その問題を解消するために、各動画ごとに再生開始時間/終了時間を設けることができるようにするとともに、再生開始時間より少し前にprefetchさせることでローディング時間を無くします。
また、一つのRootStoreから各Storeを生やし、さらにそこからAPIへリクエストを送る流れにしたため拡張性を持つ設計となっていると思います。 またRestClientをそれぞれに作ることで、より簡単にAPIリクエストを投げることができるようになっています。
そして、対象が若い世代であることから、webアプリケーションでありながらモバイルファーストでデザインしています。またCSSフレームワークは使わず、フルスクラッチで実装しています。
残念ながら、今回の開発では時間が足りなく、連続再生や、時間の永続化、PWAなどに着手できず後悔のあるハッカソンとなってしまったので、終了後も開発を続けたいと思います。
ビルド方法は kobakazu0429/client/README.md を見てください。
Checklist / チェックリスト
- [x] Your project fulfills the minimum requirements. / お題の最低要件は満たしている
- [x] We can build your project. / ビルド方法が記載されている
- [x] Your poject don't contain (Or we consider it contains) copy-pasted source code. / コピペだと思われるソースコードの仕様をしていない
- [x] Devices and commitment are described. / 工夫、こだわりが記載されている