https://github.com/prazzdev/bookshelfapp
Bookshelf Apps - Dicoding Submission Front-End Pemula
https://github.com/prazzdev/bookshelfapp
Last synced: 13 days ago
JSON representation
Bookshelf Apps - Dicoding Submission Front-End Pemula
- Host: GitHub
- URL: https://github.com/prazzdev/bookshelfapp
- Owner: prazzdev
- Created: 2023-12-25T08:49:12.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-12-26T11:16:58.000Z (over 2 years ago)
- Last Synced: 2025-03-01T08:45:01.487Z (over 1 year ago)
- Language: JavaScript
- Homepage: https://prazzdev.github.io/BookshelfApp/
- Size: 9.77 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# Bookshelf Apps - Front End Pemula, Dicoding Submission
## Kriteria Bookshelf Apps
Buatlah aplikasi web yang dapat memasukan data buku ke dalam rak, memindahkan data buku antar rak, dan menghapus data buku dari rak.
Untuk lebih jelasnya, terdapat 5 kriteria utama pada Bookshelf Apps yang harus Anda buat.
### Kriteria 1: Mampu Menambahkan Data Buku
Bookshelf Apps harus mampu menambahkan data buku baru.
Data buku yang disimpan merupakan objek JavaScript dengan struktur berikut:
```
{
id: string | number,
title: string,
author: string,
year: number,
isComplete: boolean,
}
```
Berikut contoh data riilnya:
```
{
id: 3657848524,
title: 'Harry Potter and the Philosopher\'s Stone',
author: 'J.K Rowling',
year: 1997,
isComplete: false,
}
```
> [!NOTE]
> Untuk id buku pada tiap buku yang disimpan haruslah unik. Tips dalam menetapkan nilai untuk adalah Anda bisa memanfaatkan nilai timestamp. Untuk mendapatkan nilai timestamp di JavaScript cukup mudah, cukup dengan menuliskan expressions +new Date().
### Kriteria 2: Memiliki Dua Rak Buku
Bookshelf Apps harus memiliki 2 Rak buku. Yakni, “Belum selesai dibaca” dan “Selesai dibaca”.
Rak buku "Belum selesai dibaca" hanya menyimpan buku jika properti isComplete bernilai false.
Rak buku "Selesai dibaca" hanya menyimpan buku jika properti isComplete bernilai true.
### Kriteria 3: Dapat Memindahkan Buku antar Rak
Buku yang ditampilkan pada rak, baik itu "Belum selesai dibaca" maupun "Selesai dibaca" harus dapat dipindahkan di antara keduanya.
### Kriteria 4: Dapat Menghapus Data Buku
Buku yang ditampilkan pada rak, baik itu "Belum selesai dibaca" maupun "Selesai dibaca" harus dapat dihapus.
### Kriteria 5: Manfaatkan localStorage dalam Menyimpan Data Buku
Data buku yang ditampilkan pada rak, baik itu "Belum selesai dibaca" maupun "Selesai dibaca" harus dapat bertahan walaupun halaman web ditutup.
Dengan begitu, Anda harus menyimpan data buku pada localStorage.