|
|
@ -1,4 +1,4 @@
|
|
|
|
# Apple Music Clone
|
|
|
|
# Apple Music Clone
|
|
|
|
|
|
|
|
|
|
|
|
## Project Overview
|
|
|
|
## Project Overview
|
|
|
|
|
|
|
|
|
|
|
@ -8,47 +8,73 @@ sophisticated UI to control their playback.
|
|
|
|
This clone does not.
|
|
|
|
This clone does not.
|
|
|
|
|
|
|
|
|
|
|
|
Apple Music Clone is an application built on the .NET MAUI (Multi-platform App UI)
|
|
|
|
Apple Music Clone is an application built on the .NET MAUI (Multi-platform App UI)
|
|
|
|
framework. It focuses on the `Library` "master-detail". As of the 20th of May 2023,
|
|
|
|
framework. It attempts to follow an MVVM architecture pattern. It focuses on the
|
|
|
|
it is a _façade_: only the View part of the project is serviceable.
|
|
|
|
`Library` "master-detail".
|
|
|
|
|
|
|
|
|
|
|
|
## The View
|
|
|
|
* ### :lipstick: The View
|
|
|
|
|
|
|
|
As of the 20th of May 2023, it is a <em>façade</em>: only the
|
|
|
|
|
|
|
|
View part of the project is serviceable.
|
|
|
|
|
|
|
|
|
|
|
|
* ### Library ("master")
|
|
|
|
<img src="./docs/light_en_lib_up.png" height="700" style="margin:20px">
|
|
|
|
|
|
|
|
<img src="./docs/light_en_lib_down.png" height="700" style="margin:20px">
|
|
|
|
|
|
|
|
<br>
|
|
|
|
|
|
|
|
<img src="./docs/light_en_alb_up.png" height="700" style="margin:20px">
|
|
|
|
|
|
|
|
<img src="./docs/light_en_alb_down.png" height="700" style="margin:20px">
|
|
|
|
|
|
|
|
<br>
|
|
|
|
|
|
|
|
<img src="./docs/dark_fr_lib_up.png" height="700" style="margin:20px">
|
|
|
|
|
|
|
|
<img src="./docs/dark_fr_lib_down.png" height="700" style="margin:20px">
|
|
|
|
|
|
|
|
<br>
|
|
|
|
|
|
|
|
<img src="./docs/dark_fr_alb_up.png" height="700" style="margin:20px">
|
|
|
|
|
|
|
|
<img src="./docs/dark_fr_alb_down.png" height="700" style="margin:20px">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<details><summary> more details... </summary>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* #### Library ("master") 💐
|
|
|
|
|
|
|
|
|
|
|
|
Users can browse a `Library` of `Album` and select any album to inspect.
|
|
|
|
Users can browse a `Library` of `Album` and select any album to inspect.
|
|
|
|
|
|
|
|
|
|
|
|
* ### Album ("detail")
|
|
|
|
* #### Album ("detail") 🌻
|
|
|
|
|
|
|
|
|
|
|
|
Users can browse an `Album` of `Songs`.
|
|
|
|
Users can browse an `Album` of `Songs`.
|
|
|
|
|
|
|
|
|
|
|
|
* ### Dark/Light theme
|
|
|
|
* #### Dark/Light themes 🌙 ☀️
|
|
|
|
|
|
|
|
|
|
|
|
This clone replicates the original dark/light themes by Apple music.
|
|
|
|
This clone replicates the original dark/light themes by Apple music.
|
|
|
|
|
|
|
|
|
|
|
|
To test this, you can change your device's (or your emulator's) display
|
|
|
|
To test this, you can change your device's (or your emulator's) display
|
|
|
|
setting to dark/light theme.
|
|
|
|
setting to dark/light theme.
|
|
|
|
|
|
|
|
|
|
|
|
* ### `i18n`: `en`, `fr`
|
|
|
|
* #### `i18n` 🇺🇸 🇫🇷
|
|
|
|
|
|
|
|
|
|
|
|
This clone supports two locales: English (by default), and French.
|
|
|
|
This clone supports two locales: English (by default), and French.
|
|
|
|
|
|
|
|
|
|
|
|
To test this, you can change your device's (or your emulator's) primary language
|
|
|
|
To test this, you can change your device's (or your emulator's) primary language
|
|
|
|
settings to English/French.
|
|
|
|
settings to English/French.
|
|
|
|
|
|
|
|
|
|
|
|
* ### Bottom bar
|
|
|
|
* #### Top bar ☝️
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
In Apple Music, a stylish, slightly transparent top bar contains certain menu
|
|
|
|
|
|
|
|
options, and displays the name of the current
|
|
|
|
|
|
|
|
section once the user has scrolled past the corresponding header.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
In this clone, the top bar is left at the OS default.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* #### Bottom bar 👇
|
|
|
|
|
|
|
|
|
|
|
|
In Apple Music, a consistent, stylish, slightly transparent bottom bar allows
|
|
|
|
In Apple Music, a consistent, stylish, slightly transparent bottom bar allows
|
|
|
|
navigation between different views, and paying songs.
|
|
|
|
navigation between different views, and paying songs.
|
|
|
|
|
|
|
|
|
|
|
|
In this clone, the bar is just eye-candy, and not even a little bit transparent.
|
|
|
|
In this clone, the bar is just eye-candy, and not even a little bit transparent.
|
|
|
|
|
|
|
|
|
|
|
|
* ### Top bar
|
|
|
|
</detail>
|
|
|
|
|
|
|
|
|
|
|
|
In Apple Music, a stylish, slightly transparent top bar contains certain menu
|
|
|
|
* ### 🖖 The ViewModel
|
|
|
|
options, and displays the name of the current
|
|
|
|
|
|
|
|
section once the user has scrolled past the corresponding header.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
In this clone, the top bar is left at the OS default.
|
|
|
|
A very basic ViewModel is in place, and for now it simply provides some sample data.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* ### :necktie: The Model
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A very basic Model is in place, to help the ViewModel supply some sample data.
|
|
|
|
|
|
|
|
|
|
|
|
## Installation
|
|
|
|
## Installation
|
|
|
|
|
|
|
|
|
|
|
|