Kursus Skripsi Tesis Disertasi Flutter | “Flutter & API Integration: Buat Aplikasi Berita Online Real-Time”

Berikut adalah silabus 20 sesi (masing-masing 1,5 jam) untuk kursus:
“Flutter & API Integration: Buat Aplikasi Berita Online Real-Time”
Fokus: Mengkonsumsi REST API, menampilkan data dinamis, dan membangun aplikasi berita atau informasi publik berbasis Flutter.
🔹 Sesi 1–5: Dasar Flutter dan Persiapan Proyek
Sesi 1: Pengenalan Flutter & Instalasi
-
Apa itu Flutter dan keunggulannya
-
Instalasi Flutter SDK dan Android Studio / VS Code
-
Menjalankan project Flutter pertama
Sesi 2: Struktur Proyek Flutter & Widget Dasar
-
Struktur folder & file Flutter
-
Stateless vs Stateful Widget
-
Widget dasar: Text, Image, Column, Row, Container
Sesi 3: Navigasi Halaman & Routing
-
Navigasi antar halaman
-
Menambahkan parameter pada route
-
Membuat struktur halaman aplikasi
Sesi 4: Desain UI Home Page
-
Desain tampilan awal (Header, daftar berita dummy)
-
Styling dengan
ThemeData
, warna, font, dll -
Menggunakan ListView dan Card
Sesi 5: Persiapan Konsumsi API
-
Apa itu REST API
-
Menjelaskan struktur JSON
-
Mengenal paket
http
di Flutter
🔹 Sesi 6–10: Konsumsi REST API dan Penampilan Data
Sesi 6: Fetch Data dari API Berita (Contoh: NewsAPI.org)
-
Menyambungkan ke API
-
Menampilkan hasil JSON di konsol
Sesi 7: Parsing JSON ke Model
-
Membuat model data (
NewsArticle
) -
Memanfaatkan
fromJson()
dantoJson()
Sesi 8: Menampilkan Data API ke UI
-
Menampilkan daftar artikel secara dinamis
-
Mengatur loading state dan error handling
Sesi 9: Detail Artikel & Navigasi Data
-
Menambahkan tampilan detail artikel
-
Navigasi dengan data artikel sebagai argumen
Sesi 10: Menambahkan Refresh & Loading Indicator
-
Pull to refresh
-
Loading shimmer effect atau spinner
🔹 Sesi 11–15: Fitur Tambahan & Pengolahan Data
Sesi 11: Pencarian Berita (Search Feature)
-
Menambahkan Search Bar
-
Fetch berita berdasarkan kata kunci
Sesi 12: Filter Kategori Berita
-
Menambahkan dropdown / tab kategori (politik, olahraga, dll)
-
Menyesuaikan parameter API
Sesi 13: Favorit & Penyimpanan Lokal (Shared Preferences)
-
Menandai artikel favorit
-
Menyimpan data di lokal device
Sesi 14: Menampilkan Daftar Favorit
-
Halaman khusus daftar artikel yang disukai
-
Navigasi ke detail favorit
Sesi 15: Desain Responsive & Layout Adaptif
-
Penyesuaian untuk berbagai ukuran layar
-
Menggunakan MediaQuery dan LayoutBuilder
🔹 Sesi 16–20: Testing, Deployment, dan Finalisasi Proyek
Sesi 16: Error Handling Lanjutan dan Validasi
-
Menangani error koneksi, JSON kosong, dll
-
Validasi input user (search, dsb)
Sesi 17: Implementasi Dark Mode
-
Menambahkan tema gelap
-
Switching dark/light mode
Sesi 18: Optimasi Kinerja Aplikasi
-
Lazy loading, image caching
-
Memisahkan logic dengan
Provider
atauRiverpod
(opsional)
Sesi 19: Build & Deployment ke APK
-
Build APK untuk Android
-
Penjelasan singkat publish ke Play Store
Sesi 20: Uji Coba & Presentasi Proyek
-
Review akhir
-
Demo aplikasi real-time
-
Tanya jawab dan evaluasi