diff --git a/README.md b/README.md index 5fe57b5..6122d89 100644 --- a/README.md +++ b/README.md @@ -1,24 +1,32 @@ # ILT-1 Buat Website Pertamamu +Live demo: [Calm Playlist](https://calm-playlist-basic.netlify.app/) + ## Pengantar -ILT 1 akan mengangkat materi tentang HTML dan CSS. Oleh karena itu, pengembangan aplikasi Calm Headphones akan diawali dengan membangun kerangka dan styling-nya. +ILT 1 akan mengangkat materi tentang HTML dan CSS. Oleh karena itu, pengembangan aplikasi Calm Playlist akan diawali dengan membangun kerangka dan styling-nya. ## Petunjuk Branch repository ini mengandung dua direktori yang bersifat starter dan solution project. Sebagai pembuka sesi hands-on demo, instruktur dipersilakan untuk memanfaatkan project dalam direktori `starter`. +Pada direktori `starter`, bagian header, footer, dan styling dasarnya telah disediakan. Instruktur cukup mengerjakan tiga tahap bertanda `TODO` berikut. + +1. Menyusun elemen HTML baru pada `index.html`. +2. Menerapkan styling untuk elemen baru tersebut pada `assets/styles/style.css`. +3. Mengatur buka dan tutup drawer pada `assets/scripts/script.js`. + ## Hasil Akhir Proyek Hasil akhir dari kegiatan hands-on demo akan terlihat seperti berikut. ### Versi Desktop -![Calm Headphone in desktop version](design-concept-desktop.png?raw=true) +![Calm Playlist in desktop version](design-concept-desktop.png?raw=true) ### Versi Mobile -![Calm Headphone in mobile version](design-concept-mobile.png?raw=true) +![Calm Playlist in mobile version](design-concept-mobile.png?raw=true) ## Konten (HTML) @@ -31,22 +39,43 @@ Beberapa kebutuhan konten landing page dapat dilihat pada poin-poin berikut. - Blog: `#blog` - Calm Playlist: `#playlist` - Join Calm: `#join` +- Drawer Button: gunakan `aria-label`, `aria-controls`, dan `aria-expanded` agar keadaan tombol terbaca oleh pembaca layar. + +### Intro Content + +Bagian ini terdiri dari dua kolom, yaitu kolom teks dan kolom gambar. -### Main Content +- Heading 1: `Calm Playlist` +- Paragraph: `Musik latar untuk fokus dan produktif.` +- Image: `assets/images/headphone.png` -- Heading 1: `Be Focus and Productive` -- Paragraph: `Not just an ordinary headphones. It's designed for meditation.` -- Button: `Learn More` -- Hero Image: `assets/images/calm-hero.png` +### Playlist Content + +- Heading 2: `Daftar Lagu` +- Filter: `Semua`, `Amir Firouzfard`, `Patrick A`, `FASSound` + - Bungkus tombolnya dalam elemen ber-`id="filterBar"` dengan `role="group"` dan `aria-label`. + - Setiap tombol menyimpan nilainya pada `data-author` dan keadaannya pada `aria-pressed`. +- Music List: + + | Judul | Author | + | --- | --- | + | Coverless Book | Amir Firouzfard | + | Lofi Orchestra | Patrick A | + | For a Dream | Patrick A | + | Good Night | FASSound | + | Summer Rain | Patrick A | + | Lofi Study | FASSound | + +- Album Art: gunakan `assets/images/cover.png` untuk seluruh kartu. ## Styling (CSS) ### Color Pallete -- black: `#000000` -- white: `#ffffff` -- dark: `#141E16` -- accent: `#3B855B` +- text: `#1A1A1A` +- muted: `#6B7280` +- line: `#E5E7EB` +- surface: `#FFFFFF` ### Font Type and Size @@ -54,19 +83,33 @@ Beberapa kebutuhan konten landing page dapat dilihat pada poin-poin berikut. - Type: Inter - Link: [Inter Google Font](https://fonts.google.com/specimen/Inter?preview.text=This%20is%20a%20great%20font%20to%20use%3F&preview.text_type=custom) - Font Size: - - Navigation: 16px - - Heading 1: 64px desktop, 48px mobile - - Paragraph: 18px - - Button: 18px + - Navigation: 0.9rem + - Heading 1: 2rem + - Heading 2: 1.25rem + - Judul lagu: 1rem + - Nama author: 0.85rem + +### Layout + +- Intro: dua kolom menggunakan `display: flex`. +- Filter: berbaris ke samping menggunakan `display: flex`. +- Music List: beberapa kolom menggunakan `display: grid`. ## Checklist Live Demo Instruktur dapat memanfaatkan checklist live demo berikut agar sesi hands-on lebih terstruktur. -- [ ] Menyiapkan resource project seperti gambar. +- [ ] Menyiapkan starter project yang telah disediakan. - [ ] Membangun kerangka halaman web menggunakan HTML. - - [ ] Mengenalkan semantic HTML seperti `
` ,`