Aplikasi Flutter buat nyari dan explore karakter anime. UI-nya clean, cepet, enak diliat. Data diambil dari Jikan API (MyAnimeList).
Note: Ini project tugas kuliah gw buat mata kuliah Pengembangan Aplikasi Mobile.
- 🔍 Search - Cari karakter by nama
- 🎲 Shuffle Characters - Setiap refresh/shuffle tampil karakter random berbeda
- 📊 Top Characters - Liat karakter paling populer dari database besar
- 📖 Detail Karakter - Info lengkap: nama (romaji & kanji), foto, bio, jumlah favorites, anime appearances
- 🎙️ Voice Actors - Liat siapa aja yang voice karakter, lengkap dengan bahasa
- ⚡ Fast Loading - Gambar di-cache, loading pake shimmer animation
- 🎬 Browse Anime - Screen terpisah untuk browse anime
- 🔎 Search Anime - Cari anime by nama
- 📋 Anime List - List anime dengan thumbnail & info
- 🎯 Filter Characters - Tap anime untuk liat semua karakternya
(Coming soon - males screenshot wkwk)
Yang lu perluin:
- Flutter SDK 3.0+
- Text editor (VS Code / Android Studio)
- Device atau Emulator
Langkah-langkah:
# 1. Clone repo ini
git clone https://github.com/Kiy0w0/Mizu-Anime-Database.git
cd Mizu-Anime-Database
# 2. Install dependencies
flutter pub get
# 3. Jalanin aplikasinya
flutter runKalo mau run di browser (chrome):
flutter run -d chromePake Jikan API v4 (unofficial MyAnimeList API). Gratis, ga perlu API key.
Endpoints yang dipake:
GET /characters- List & search karakterGET /characters/{id}/full- Detail karakter lengkap
Rate limit: 1 request per detik (udah di-handle di code jadi ga perlu khawatir)
Edit lib/main.dart:
colorScheme: const ColorScheme.dark(
primary: Color(0xFF0EA5E9), // Sky blue
secondary: Color(0xFF3B82F6), // Ocean blue
surface: Color(0xFF0f172a), // Dark background
),Edit lib/screens/home_screen.dart:
SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 2, // Jumlah kolom (2 = 2 cards per baris)
childAspectRatio: 0.7, // Rasio tinggi/lebar card
),Fitur yang pengen ditambahin kedepannya:
- Filter by anime ✅
- Info voice actors ✅
- Implementasi Rate Us functionality
- Implementasi Share App
- Page Donate/Support yang proper
- Favorites/bookmark (pake local storage)
- Toggle light/dark theme
- Perbandingan karakter
- Offline mode
- Kalo scroll terlalu cepet bisa kena rate limit (429 error) - solusinya slow down aja scrollingnya
- Beberapa karakter ga punya foto/image
App ini dibuat sebagai tugas kuliah untuk mata kuliah Pengembangan Aplikasi Mobile. Goal-nya adalah bikin Flutter app yang:
- Consume REST API
- Implement state management yang proper
- Punya UI/UX yang clean dan modern
- Follow Flutter best practices
Awalnya emang cuma tugas, tapi ternyata asik juga bikin app ini jadi mungkin bakal gw lanjutin develop-nya wkwk
Semua data anime © MyAnimeList. Project ini purely untuk keperluan edukasi.
Credits:
- Jikan API - API provider
- MyAnimeList - Sumber data
- Flutter & Dart community
Project ini pakek MIT License. Bebas dipake, dimodif, didistribusiin. Cek LICENSE file untuk detail lengkapnya.
Kiy0w0 - GitHub
Mahasiswi yang lagi belajar mobile dev. Open buat feedback dan saran!
Ada bug atau mau request fitur? Buka issue aja!
Star ⭐ kalo suka ya!
Made With 💙 By MizuNetworking