Dizin Yapısı
Giriş
Nylo Website, Laravel'den ilham alan temiz ve düzenli bir dizin yapısı kullanır. Bu yapı, projeler arasında tutarlılığı korumaya yardımcı olur ve dosyaları bulmayı kolaylaştırır.
Kök Dizin
nylo_app/
├── android/ # Android platform files
├── assets/ # Images, fonts, and other assets
├── ios/ # iOS platform files
├── lang/ # Language/translation JSON files
├── lib/ # Dart application code
├── test/ # Test files
├── .env # Environment variables
├── pubspec.yaml # Dependencies and project config
└── ...
lib Dizini
lib/ klasörü tüm Dart uygulama kodunuzu içerir:
lib/
├── app/ # Application logic
├── bootstrap/ # Boot configuration
├── config/ # Configuration files
├── resources/ # UI components
├── routes/ # Route definitions
└── main.dart # Application entry point
app/
app/ dizini uygulamanızın çekirdek mantığını içerir:
| Dizin | Amaç |
|---|---|
commands/ |
Özel Metro CLI komutları |
controllers/ |
İş mantığı için sayfa controller'ları |
events/ |
Olay sistemi için olay sınıfları |
forms/ |
Doğrulamalı form sınıfları |
models/ |
Veri model sınıfları |
networking/ |
API servisleri ve ağ yapılandırması |
networking/dio/interceptors/ |
Dio HTTP interceptor'ları |
providers/ |
Uygulama başlangıcında yüklenen servis sağlayıcılar |
services/ |
Genel servis sınıfları |
bootstrap/
bootstrap/ dizini uygulamanızın nasıl başladığını yapılandıran dosyaları içerir:
| Dosya | Amaç |
|---|---|
boot.dart |
Ana başlatma sırası yapılandırması |
decoders.dart |
Model ve API kod çözücü kaydı |
env.g.dart |
Oluşturulan şifreli ortam yapılandırması |
events.dart |
Olay kaydı |
extensions.dart |
Özel uzantılar |
helpers.dart |
Özel yardımcı fonksiyonlar |
providers.dart |
Sağlayıcı kaydı |
theme.dart |
Tema yapılandırması |
config/
config/ dizini uygulama yapılandırmasını içerir:
| Dosya | Amaç |
|---|---|
app.dart |
Temel uygulama ayarları |
design.dart |
Uygulama tasarımı (font, logo, yükleyici) |
localization.dart |
Dil ve yerel ayarlar |
storage_keys.dart |
Yerel depolama anahtar tanımları |
toast_notification.dart |
Toast bildirim stilleri |
resources/
resources/ dizini arayüz bileşenlerini içerir:
| Dizin | Amaç |
|---|---|
pages/ |
Sayfa widget'ları (ekranlar) |
themes/ |
Tema tanımları |
themes/light/ |
Açık tema renkleri |
themes/dark/ |
Koyu tema renkleri |
widgets/ |
Yeniden kullanılabilir widget bileşenleri |
widgets/buttons/ |
Özel buton widget'ları |
widgets/bottom_sheet_modals/ |
Alt sayfa modal widget'ları |
routes/
routes/ dizini yönlendirme yapılandırmasını içerir:
| Dosya/Dizin | Amaç |
|---|---|
router.dart |
Rota tanımları |
guards/ |
Rota koruma sınıfları |
Assets Dizini
assets/ dizini statik dosyaları depolar:
assets/
├── app_icon/ # App icon source
├── fonts/ # Custom fonts
└── images/ # Image assets
Varlıkları Kaydetme
Varlıklar pubspec.yaml dosyasında kaydedilir:
flutter:
assets:
- assets/fonts/
- assets/images/
- assets/app_icon/
- lang/
Asset Yardımcıları
Nylo Website, varlıklarla çalışmak için yardımcılar sağlar.
Görsel Varlıklar
// Standard Flutter way
Image.asset(
'assets/images/logo.png',
height: 50,
width: 50,
)
// Using LocalAsset widget
LocalAsset.image(
"logo.png",
height: 50,
width: 50,
)
Genel Varlıklar
// Get any asset path
String fontPath = getAsset('fonts/custom.ttf');
// Video example
VideoPlayerController.asset(
getAsset('videos/intro.mp4')
)
Dil Dosyaları
Dil dosyaları proje kökündeki lang/ dizininde saklanır:
lang/
├── en.json # English
├── es.json # Spanish
├── fr.json # French
└── ...
Daha fazla ayrıntı için Yerelileştirme sayfasına bakın.