Getting Started

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.