Isar, Flutter/Dart için geliştirilmiş, süper hızlı, offline çalışabilen (NoSQL tarzı) bir veritabanıdır. 🚀
Kısaca:
Isar Database, mobil (iOS, Android), masaüstü ve web uygulamalarında kullanılabilen, Flutter için optimize edilmiş bir yerel veritabanıdır.
SQLite gibi çalışır ama daha hızlıdır (milyonlarca kaydı işleyebilir).
Hem sorgulama (query) desteği vardır hem de indexleme ile çok hızlı arama yapabilir.
Offline-first uygulamalar için idealdir (internet olmasa bile çalışır).
Isar’ın Özellikleri:
✅ Flutter ve Dart için native yazılmıştır (C++ çekirdeği ile).
✅ Asenkron ve senkron kullanım desteği vardır.
✅ Schema tabanlıdır, yani model (collection) tanımlaman gerekir.
✅ İlişkileri destekler (ör. bir kullanıcının notları gibi).
✅ Reactive queries ile veriler değişince otomatik güncellenir (Stream gibi çalışır).
✅ Cross-platform (iOS, Android, macOS, Windows, Linux, Web).
Örnek Kullanım:
import ‘package:isar/isar.dart’;
part ‘user.g.dart’; // kod üretimi için
@collection
class User {
Id id = Isar.autoIncrement; // otomatik ID
late String name;
int? age;
}
final isar = await Isar.open([UserSchema]);
// Ekleme
await isar.writeTxn(() async {
await isar.users.put(User()..name = “Ahmet”..age = 25);
});
// Okuma
final users = await isar.users.where().findAll();
// Filtreleme
final result = await isar.users.filter().ageGreaterThan(20).findAll();
📌 Isar, Flutter’da Hive veya SQLite’a alternatif olarak düşünüle
bilir ama genelde daha performanslı ve kolaydır.