Deskripsi
Aplikasi Perpustakaan Digital ini dirancang dengan tampilan modern, responsif, dan mobile-friendly yang memberikan pengalaman pengguna optimal melalui navigasi bawah (bottom navigation). Antarmukanya menyesuaikan peran pengguna, di mana admin hanya melihat ikon, sedangkan pengguna biasa melihat ikon dan teks. Di halaman beranda, pengguna dapat melihat daftar buku lengkap dengan cover, judul, dan kategori, serta melakukan pencarian real-time berdasarkan judul, penulis, atau deskripsi. Admin memiliki tombol khusus untuk menambahkan buku. Saat tidak ada hasil, tampilan "kosong" akan ditampilkan untuk memberi umpan balik yang jelas.
Fitur kategori buku disajikan dalam tampilan grid responsif, memungkinkan pengguna untuk memfilter buku berdasarkan kategori tertentu. Setiap buku memiliki halaman detail dalam bentuk modal yang memuat informasi lengkap seperti cover, judul, penulis, kategori, tingkat, tahun terbit, jumlah halaman, dan deskripsi. Terdapat tiga tab utama dalam tampilan detail: Baca untuk membuka buku secara fullscreen melalui iframe (PDF, Canva, atau Google Drive), Review untuk membaca dan menulis ulasan bagi pengguna login, dan Download untuk mengunduh file (jika tersedia), khusus bagi pengguna yang sudah login. Admin juga mendapatkan akses ke QR Code download jika tersedia.
Pengguna yang login bisa memberikan rating bintang (1–5) dan menulis review, yang akan ditampilkan bersama nama, kelas, waktu, dan rating. Review terbaru akan muncul di bagian atas. Buku juga bisa ditandai sebagai favorit dan dikelola dalam tab khusus "Favorit", dengan tampilan kosong jika belum ada buku yang difavoritkan. Fitur pengumuman memungkinkan admin menyampaikan informasi penting dalam halaman khusus, lengkap dengan judul, banner, deskripsi, tombol aksi (jika ada), dan tanggal. Informasi terbaru ditampilkan di atas, dan detailnya ditampilkan dalam modal. Admin dapat menambahkan pengumuman melalui tombol "Tambah Info".
Riwayat bacaan dicatat secara otomatis. Pengguna login hanya bisa melihat riwayat miliknya sendiri, sementara admin bisa melihat seluruh history pengguna. Data diurutkan berdasarkan waktu terbaru dan dapat dihapus per item atau sekaligus. Fitur statistik dan peringkat menampilkan Top 10 pembaca aktif berdasarkan durasi membaca, serta statistik buku untuk admin seperti jumlah buku per kategori, buku paling favorit, paling banyak diunduh dan dibaca, lengkap dengan grafik interaktif.
Profil pengguna menampilkan informasi pribadi sesuai peran. Untuk siswa, informasi meliputi nama, NISN, kelas, nomor WhatsApp, alamat, ekstrakurikuler, dan wali kelas. Admin hanya menampilkan username. Avatar ditampilkan berdasarkan inisial nama, dan tersedia tombol logout dengan konfirmasi. Panel Admin hanya muncul untuk admin yang sudah login, menyediakan fitur tambah/edit buku dan info lengkap, serta semua data tersimpan otomatis di Google Sheets.
Sistem login dibuat sederhana: siswa login menggunakan NISN, sedangkan admin menggunakan username dan password. Informasi login disimpan di localStorage sehingga mendukung auto-login. Logout dilengkapi konfirmasi. Hak akses pengguna diatur berdasarkan peran: pengguna tanpa login dapat melihat daftar buku, membaca, dan mengakses info, namun tidak bisa memberi review, menandai favorit, mengunduh, dan mengakses fitur pribadi. Pengguna login (siswa) mendapatkan akses penuh terhadap fitur pribadi seperti review, favorit, download, profil, dan history. Admin mendapatkan akses penuh terhadap seluruh fitur termasuk statistik, QR code, dan panel pengelolaan.
Secara teknis, aplikasi ini dibangun dengan prinsip desain mobile-first dan responsif (breakpoint 768px), didukung caching data, pencarian real-time tanpa reload, sistem modal untuk detail dan form, pembacaan buku via iframe fullscreen, integrasi penyimpanan data di Google Sheets, Material Icons untuk UI yang konsisten, serta manajemen sesi login melalui localStorage untuk kemudahan akses pengguna.
