idris_db 1.0.3 copy "idris_db: ^1.0.3" to clipboard
idris_db: ^1.0.3 copied to clipboard

High-performance NoSQL database for Flutter with exclusive developer tools - Enhanced error messages, smart logging, query analyzer, and Arabic support. Built by IDRISIUM Corp.

[Idris DB Banner]

🗄️ idris DB #

The Fastest NoSQL Database for Flutter #

pub package License GitHub Stars Pub Points Pub Likes

Built with ❤️ by IDRISIUM Corp | Idris Ghamid (إدريس غامد)

FeaturesInstallationQuick StartRoadmapDocumentation


✨ Why Choose Idris DB? #

[Why Choose Idris DB]

Idris DB is an enhanced fork of Isar with exclusive features that make it the best choice for Flutter developers.

Core Features (Available Now) #

Built on the solid foundation of Isar:

  • Blazing Fast - 10x faster than Hive
  • Type Safe - Full Dart type safety with code generation
  • Cross Platform - Android, iOS, Web, Desktop
  • Advanced Queries - Indexes, filters, sorting, full-text search
  • Offline First - Works 100% offline
  • Zero Config - No setup required
  • ACID Transactions - Full transaction support
  • Watchers - Real-time data updates

🚧 Enhanced Features (In Development) #

[Enhanced Features]

We're actively working on exclusive features:

Available Now (v1.0.0)

  1. Query Performance Analyzer - Smart query analysis with index suggestions
  2. Enhanced Error Messages - Clear, actionable errors with hints and solutions
  3. Smart Logging System - Multi-level logging with query/transaction tracking
  4. Arabic Support - Full bilingual support (English + العربية)

🔨 Coming in v1.1.0 (Next 2 Months)

  1. Data Validation Framework - Validate data before insert/update
  2. Backup & Restore - One-line database backup and restore
  3. Query Caching - Auto-caching for frequently accessed data
  4. Real-time Stats - Monitor database performance in real-time
  5. Development Mode - Extra checks and warnings during development

🔮 Planned for v1.2.0+

  1. Export/Import Tools - Export to JSON/CSV with one line
  2. Visual Inspector - Debug widget for development
  3. And 40+ more features! - See our roadmap

🎯 Our Vision #

[Idris DB Vision]

Idris DB aims to be "The Developer-First Database" - not just fast, but with tools that make you a better, more productive developer.


📦 Installation #

Add to your pubspec.yaml:

dependencies:
  idris_db: ^1.0.0

dev_dependencies:
  idris_db_generator: ^1.0.0
  build_runner: ^2.4.0

Then run:

flutter pub get

🚀 Quick Start #

1. Define Your Model #

import 'package:idris_db/idris_db.dart';

part 'user.g.dart';

@collection
class User {
  Id? id;

  @Index()
  late String name;

  late int age;

  @Index()
  late String email;
}

2. Generate Code #

flutter pub run build_runner build

3. Open Database #

final idrisDb = await IdrisDb.open([UserSchema]);

4. CRUD Operations #

// Create
final user = User()
  ..name = 'Idris Ghamid'
  ..age = 25
  ..email = 'idris.ghamid@gmail.com';

await idrisDb.writeTxn(() async {
  await idrisDb.users.put(user);
});

// Read
final users = await idrisDb.users.where().findAll();

// Update
await idrisDb.writeTxn(() async {
  user.age = 26;
  await idrisDb.users.put(user);
});

// Delete
await idrisDb.writeTxn(() async {
  await idrisDb.users.delete(user.id!);
});

🎯 Available Features #

Query Performance Analyzer (Available Now!) #

Analyze your queries and get optimization suggestions:

final analyzer = QueryAnalyzer(idrisDb);

final analysis = await analyzer.analyze(() {
  return idrisDb.users
      .filter()
      .ageGreaterThan(18)
      .findAll();
});

print(analysis);
// Output:
// 📊 Query Analysis:
//    ⏱️  Duration: 234ms
//    📈 Results: 5000
//
// ⚠️  Warnings:
//    - Query took 234ms (slow)
//    - Large result set: 5000 documents
//
// 💡 Suggestions:
//    - Consider adding an index on the 'age' field
//    - Consider using pagination with .limit() and .offset()

🚧 Coming Soon #

The following features are under active development and will be available in v1.1.0:

Better Error Messages #

Clear, actionable errors with hints and solutions in both English and Arabic.

Smart Logging System #

Comprehensive logging with multiple levels, history, and performance tracking.

Data Validation Framework #

Built-in validators for common patterns (email, phone, URL, etc.) with custom validation support.

Backup & Restore #

One-line database backup with compression and encryption support.

Arabic Support (Available Now!) #

Full bilingual support for error messages in English and Arabic:

// Set language to Arabic
IdrisDbEnhancedError.language = 'ar';

// Or detect from device locale
final locale = Platform.localeName;
IdrisDbEnhancedError.language = locale.startsWith('ar') ? 'ar' : 'en';

// All error messages will now use Arabic
// ❌ خطأ Idris DB [COLLECTION_NOT_FOUND]
//    المجموعة "User" غير موجودة في قاعدة البيانات
// 
// 💡 تلميح: قد يكون schema المجموعة غير مسجل...
// ✅ الحل: أضف UserSchema إلى قائمة schemas...

And More! #

See our complete roadmap for all 50 planned features!


🎯 Feature Icons #

[Feature Icons]

📊 Performance Benchmarks #

Idris DB (built on Isar) is blazing fast - up to 10x faster than other Flutter databases:

[Flutter Database Library Comparison]

Detailed Benchmarks #

Insert Performance #

[Insert Benchmark]

Query Performance #

[Query Benchmark]

Update Performance #

[Update Benchmark]

Database Size #

[Size Comparison]

Benchmarks run on real devices. Your results may vary.


🔍 Database Inspector #

Idris DB comes with a powerful visual inspector for debugging:

[Idris DB Inspector]

To launch the inspector, run your app in debug mode and open the inspector link in the logs.


📚 Documentation #

  • Getting Started: Quick Start Guide
  • Roadmap: 50 Features Plan
  • Current Status: Implementation Audit
  • API Reference: Full API Docs
  • Migration Guide: From Isar/Hive

🗺️ Roadmap #

We have an ambitious plan to make Idris DB the best database for Flutter developers. Check out our complete roadmap with 50 planned features including:

  • 🕰️ Time Travel Debugging
  • 🤖 AI-Powered Query Optimization
  • 🔮 Predictive Caching
  • 👥 Live Collaboration Mode
  • 🇪🇬 Full Arabic Support
  • And 45+ more innovative features!

Current Progress: 100% of Step 2 Complete! (4 features fully working)

See INTEGRATION_PROGRESS.md for detailed status.


🙏 Attribution #

Idris DB is built on top of excellent open-source projects:

  • Isar Plus by Ahmet Aydın - Enhanced fork of Isar
  • Isar by Simon Choi - Original high-performance database
  • MDBX by Leonid Yuriev - Embedded database engine
  • SQLite - Web platform support

All licensed under Apache License 2.0 (see NOTICE file).


👤 Author #

Idris Ghamid (إدريس غامد)

Social Media #


📄 License #

Licensed under the Apache License, Version 2.0.
See LICENSE file for details.


🌟 Support #

If you find Idris DB useful or want to support its development:

Current Status #

Idris DB is in active development. The core database functionality (from Isar) is production-ready, but enhanced features are still being implemented. See our roadmap for details.

Version 1.0.0: Stable core + 1 enhanced feature (Query Analyzer)
Version 1.1.0 (Target: 2 months): + 7 more enhanced features
Version 1.2.0+: Full feature set with 50+ enhancements


Built by IDRIS GHAMID

Making Flutter development faster and easier, one database at a time.

1
likes
0
points
173
downloads

Documentation

Documentation

Publisher

unverified uploader

Weekly Downloads

High-performance NoSQL database for Flutter with exclusive developer tools - Enhanced error messages, smart logging, query analyzer, and Arabic support. Built by IDRISIUM Corp.

Repository (GitHub)
View/report issues

Topics

#database #nosql #flutter #performance #offline-first

Funding

Consider supporting this project:

github.com

License

unknown (license)

Dependencies

analyzer, build, ffi, json_annotation, logger, meta, source_gen, web

More

Packages that depend on idris_db