English
Mini Catalog Application
A Flutter mobile application built as part of a weekly Flutter training program. The app demonstrates core Flutter concepts including widget architecture, multi-screen navigation with Named Routes & Route Arguments, JSON simulation with fromJson/toJson, GridView & ListView product displays, search/filter functionality, local asset management (Image.asset), and simple cart state management with setState.
Flutter 3.32.1 • Dart 3.8.1
- Ensure Flutter SDK is installed and configured (
flutter doctor). - Clone or open this repository in VS Code or Android Studio.
- Run
flutter pub getto install dependencies. - Connect a physical Android device or start an emulator.
- Run the application:
flutter run
lib/
├── main.dart # App entry point & Named Routes
├── models/
│ └── product.dart # Product model with fromJson / toJson
├── data/
│ └── sample_data.dart # JSON simulation (fakestoreapi format)
└── screens/
├── product_list_screen.dart # Homepage: banner, search, filter, grid/list view
└── product_detail_screen.dart# Product detail with cart simulation
assets/
└── images/
└── logo.jpg # App logo (Image.asset usage)
- ✅
Productmodel withfromJson/toJson - ✅ JSON simulation parsed via
dart:convert - ✅ Banner image (
wantapi.com/assets/banner.png) - ✅
GridView.builder— grid product cards - ✅
ListView.builder— list view toggle - ✅ Search & category filter
- ✅ Named Routes + Route Arguments (multi-screen navigation)
- ✅
Image.assetlocal asset usage - ✅ Cart state simulation with
setState - ✅
Stateless&Statefulwidgets
- Banner:
https://wantapi.com/assets/banner.png - Product data format:
https://fakestoreapi.com/products(simulated locally)
| Home (Grid View) | Home (List View) | Product Detail |
|---|---|---|
![]() |
![]() |
![]() |
Türkçe
Mini Katalog Uygulaması
Haftalık Flutter eğitim programı kapsamında geliştirilen bir Flutter mobil uygulamasıdır. Uygulama; widget mimarisi, Named Routes & Route Arguments ile çok ekranlı navigasyon, fromJson/toJson ile JSON simülasyonu, GridView & ListView ürün listeleme, arama/filtreleme, yerel asset yönetimi (Image.asset) ve setState ile basit sepet durum yönetimi gibi temel Flutter kavramlarını göstermektedir.
Flutter 3.32.1 • Dart 3.8.1
- Flutter SDK'sının yüklü ve yapılandırılmış olduğundan emin olun (
flutter doctor). - Bu projeyi VS Code veya Android Studio'da açın.
- Bağımlılıkları yüklemek için
flutter pub getkomutunu çalıştırın. - Fiziksel bir Android cihaz bağlayın veya emülatör başlatın.
- Uygulamayı çalıştırın:
flutter run
lib/
├── main.dart # Uygulama giriş noktası & Named Routes
├── models/
│ └── product.dart # fromJson / toJson içeren Product modeli
├── data/
│ └── sample_data.dart # JSON simülasyonu (fakestoreapi formatı)
└── screens/
├── product_list_screen.dart # Ana sayfa: banner, arama, filtre, grid/liste
└── product_detail_screen.dart# Ürün detayı ve sepet simülasyonu
assets/
└── images/
└── logo.jpg # Uygulama logosu (Image.asset kullanımı)
- ✅
fromJson/toJsoniçerenProductmodeli - ✅
dart:convertile parse edilen JSON simülasyonu - ✅ Banner görseli (
wantapi.com/assets/banner.png) - ✅
GridView.builder— grid ürün kartları - ✅
ListView.builder— liste görünümü toggle - ✅ Arama & kategori filtresi
- ✅ Named Routes + Route Arguments (çok ekranlı navigasyon)
- ✅
Image.assetyerel asset kullanımı - ✅
setStateile sepet durum simülasyonu - ✅
Stateless&Statefulwidget'lar
- Banner:
https://wantapi.com/assets/banner.png - Ürün veri formatı:
https://fakestoreapi.com/products(yerel simülasyon)
| Ana Sayfa (Grid) | Ana Sayfa (Liste) | Ürün Detayı |
|---|---|---|
![]() |
![]() |
![]() |


