lib/
├── core/
│ ├── components/
│ │ ├── GameCard.dart // Komponen untuk menampilkan kartu game.
│ │ ├── SearchBar.dart // Komponen untuk bilah pencarian.
│ │ ├── IncomeChart.dart // Komponen untuk grafik pendapatan.
│ │ ├── TournamentCard.dart // Komponen untuk menampilkan kartu turnamen.
│ │ ├── TrendWidget.dart // Komponen untuk menampilkan tren game.
│ └── utils/
│ └── colors.dart // Berisi konstanta warna untuk tema aplikasi.
│ └── strings.dart // Berisi teks atau string yang digunakan di aplikasi.
│ └── images.dart // Berisi URL atau jalur gambar yang digunakan di aplikasi.
│ └── route_utils.dart // Utilitas untuk navigasi antar layar.
├── data/
│ ├── game/
│ │ ├── GameModel.dart // Model data untuk game.
│ │ ├── GameService.dart // Berisi service untuk fetch data game dari API.
│ ├── tournament/
│ │ ├── TournamentModel.dart // Model data untuk turnamen.
│ │ ├── TournamentService.dart// Berisi service untuk fetch data turnamen dari API.
│ └── user/
│ ├── UserModel.dart // Model data untuk pengguna.
│ └── UserService.dart // Berisi service untuk data pengguna, seperti profil dan statistik.
├── features/
│ ├── game_listing/
│ │ ├── GameListingScreen.dart // Layar daftar game yang menampilkan game-game populer.
│ │ ├── GameController.dart // Kontroler yang menangani logika untuk layar daftar game.
│ └── dashboard/
│ ├── DashboardScreen.dart // Layar utama (home) yang menampilkan statistik, game, dan turnamen.
│ ├── DashboardController.dart // Kontroler untuk menangani logika layar utama.
│ └── IncomeSummaryWidget.dart // Widget yang menampilkan ringkasan pendapatan.
│ ├── tournaments/
│ │ ├── TournamentScreen.dart // Layar yang menampilkan turnamen yang sedang berlangsung.
│ │ ├── TournamentController.dart // Kontroler untuk logika turnamen.
│ └── trends/
│ ├── TrendsScreen.dart // Layar yang menampilkan tren game saat ini.
│ ├── TrendsController.dart // Kontroler untuk menangani logika tren.
├── widgets/
│ ├── BottomNavigationBar.dart // Widget untuk navigasi bawah.
│ └── CustomAppBar.dart // AppBar custom untuk aplikasi.
└── main.dart // Entry point aplikasi.
Penjelasan Struktur:
core/:
Berisi komponen yang dapat digunakan kembali di seluruh aplikasi seperti kartu game, kartu turnamen, grafik pendapatan, dan widget tren. Ada juga utilitas yang berhubungan dengan warna, string, gambar, dan navigasi.
data/:
Menyimpan model dan service API yang berhubungan dengan data game, turnamen, dan pengguna. Model digunakan untuk mendefinisikan struktur data, sementara service digunakan untuk mengambil data dari server atau API.
features/:
Ini adalah folder fitur utama yang menyimpan logika layar seperti daftar game, dashboard utama, turnamen, dan tren. Setiap fitur memiliki layar, kontroler, dan widget yang spesifik.
widgets/:
Berisi widget custom yang digunakan di berbagai layar seperti navigasi bawah (bottom navigation bar) dan custom AppBar.
main.dart:
File utama aplikasi yang menjalankan aplikasi Flutter. Di sini akan diinisialisasi widget utama seperti DashboardScreen, BottomNavigationBar, dll.
https://dribbble.com/shots/21156197-Game-Store-Platform-App
Struktur Direktori untuk Aplikasi Toko Game
Penjelasan Struktur:
core/
:data/
:features/
:widgets/
:main.dart
:DashboardScreen
,BottomNavigationBar
, dll.