Flutter Hive NoSQL Database
Build Flutter NoSQL Database App With Hive Package
Description
In this Flutter course we are going to learn about local data storage using Hive package which help us to create NoSQL database, it internally make use of key-value and work well both with Android, iOS, Desktop and Web.
Hive is a lightweight and blazing fast key-value database written in pure Dart. Inspired by Bitcask.
Features
Cross platform: mobile, desktop, browser
Great performance (see benchmark)
Simple, powerful, & intuitive API
Strong encryption built in
NO native dependencies
Batteries included
Store objects
Hive not only supports primitives, lists and maps but also any Dart object you like. You need to generate a type adapter before you can store objects
Hive was written with Flutter in mind. It is a perfect fit if you need a lightweight datastore for your app. After adding the required dependencies and initializing Hive, you can use Hive in your project:
What are boxes?
All data stored in Hive is organized in boxes. A box can be compared to a table in SQL, but it does not have a structure and can contain anything.
For a small app, a single box might be enough. For more advanced problems, boxes are a great way to organize your data. Boxes can also be encrypted to store sensitive data.
When to use Hive
Hive is very performant because it has little overhead compared to relational databases. The API is very close to how the data is stored on the disk.
Key-value databases can be used to store almost any kind of data. For example:
User profiles
Session information
Article/blog comments
Messages
Shopping cart contents
Product categories
Binary data
etc.
Hive is also one of the best options when it comes to cross-platform support. You don't have to include binaries, and it works in the browser using IndexedDB.
If you use the shared_preferences packages and don't need to access them from native code, you should always use Hive instead.
What You Will Learn!
- Flutter
- Dart
- Hive
- Secure Storage
Who Should Attend!
- Anyone interested in Flutter