প্রকল্প সম্পর্কে

SQLite Loom হলো Dart এবং Flutter অ্যাপ্লিকেশনের জন্য sqflite_common-এর উপর ভিত্তি করে তৈরি একটি রিঅ্যাক্টিভ SQLite লেয়ার। এটি কোড জেনারেশন, অ্যানোটেশন বা বিল্ড রানারের প্রয়োজন ছাড়াই ডাটাবেস অপারেশনের জন্য একটি টাইপড ইন্টারফেস প্রদান করে। এর মূল ক্ষমতাগুলোর মধ্যে রয়েছে: - টাইপড টেবিল এবং কুয়েরি: কলামের জন্য টাইপড ভ্যালু এবং ফিল্টার, অর্ডারিং এবং পেজিনেশন কম্পোজ করার জন্য ইমিউটেবল কুয়েরি সমর্থন করে। - রিঅ্যাক্টিভ রিড: ডাটার তালিকা, কাউন্ট এবং অস্তিত্ব পর্যবেক্ষণ করার জন্য লাইভ স্ট্রিম প্রদান করে, যা ট্রানজ্যাকশন-অ্যাওয়ার ইনভ্যালিডেশন দ্বারা পরিচালিত। - নিরাপদ রাইট: এটি গার্ডেড রাইট বাস্তবায়ন করে, যেখানে আনফিল্টারড আপডেট এবং ডিলিট ব্যর্থ হয় যতক্ষণ না স্পষ্টভাবে allRows()-এর মাধ্যমে অনুরোধ করা হয়। - এক্সপ্লিসিট মাইগ্রেশন: এতে একটি মাইগ্রেশন সিস্টেম রয়েছে যা প্রদত্ত CLI-এর মাধ্যমে অথবা স্টার্টআপের সময় প্রোগ্রাম্যাটিকভাবে পরিচালনা করা যায়। - রিলেশনশিপ ম্যানেজমেন্ট: ওয়ান-টু-ওয়ান, ওয়ান-টু-মেনি এবং মেনি-টু-ওয়ান রিলেশনশিপের জন্য এক্সপ্লিসিট ডেসক্রিপ্টর সমর্থন করে, যার মধ্যে N+1 কুয়েরি প্যাটার্ন প্রতিরোধ করতে ব্যাচড লোডিং অন্তর্ভুক্ত। - অ্যাডভান্সড SQLite সাপোর্ট: WAL মোড, ফরেন কি (foreign keys), RETURNING ক্লজ এবং স্ট্রিক্ট টেবিলের মতো SQLite ফিচারগুলোর সাথে ইন্টিগ্রেটেড। - ডায়াগনস্টিকস: কুয়েরি ডিউরেশন এবং রেজাল্ট কাউন্ট মনিটর করার জন্য একটি DbObserver-এর পাশাপাশি ইন্টিগ্রিটি চেক এবং ভ্যাকুয়ামিং-এর টুলস অন্তর্ভুক্ত রয়েছে।