isar/hive
54.9
Adequate · 23 September 2026
670
lines of production code
Dart
primary language
5
measurements over time
What this system is
This system is a Dart library for persistent data storage, fundamentally rewritten in version 4.0 to utilize the Isar engine instead of a custom file-based implementation. It provides a modern API for managing local data through background isolate support and transactional box operations. The update also includes a Flutter-based example application and a migrated test suite aligned with the new underlying storage engine.
Removals
Removal of CRC32 and Lock utility classes
The CRC32 checksum utility and the Lock synchronization utility have been removed from the lib/src/util directory. This eliminates the ability to compute CRC32 checksums and manage sequential execution of asynchronous functions via the removed Lock class.
lib/src/util · high confidence
Removed binary reader and writer implementations
The abstract \BinaryReader\ and \BinaryWriter\ interfaces and their concrete implementations (\BinaryReaderImpl\, \BinaryWriterImpl\, \BinaryWriterBuffer\) have been removed from the \lib/src/binary\ directory. This change eliminates the previous binary serialization and deserialization logic, meaning the library no longer supports reading or writing data in the specific binary format previously handled by these classes.
lib/src/binary · high confidence
Removed internal IO implementation classes
The internal IO classes \BufferedFileReader\, \Frame\, \Header\, and \SyncedFile\ have been removed from the \lib/src/io\ directory. This change eliminates the previous file-based storage and serialization logic, likely as part of a larger refactoring or migration of the storage backend.
lib/src/io · high confidence
Behavioural changes
Example app updated to a Flutter-based Hive demo
The example directory now provides a Flutter-based demonstration of Hive, replacing the previous standalone Dart script. The new example includes a README with setup instructions and a complete Flutter app that allows users to select favorite flowers, storing selections in a Hive box. This shift makes the example more accessible for Flutter developers and better illustrates Hive's integration with Flutter's UI framework.
example · high confidence
Hive v4: Complete rewrite using Isar for background isolate support
The library has been rewritten to use Isar as the underlying storage engine, replacing the previous file-based implementation. This change introduces a new \Hive.compute\ API that allows running computations in background isolates, with automatic initialization and cleanup of boxes within those isolates. The \Box\ interface has been updated to support read and write transactions, and the internal storage model has shifted from a custom binary format to Isar collections, enabling better performance and concurrent access.
lib/src · high confidence
Refactor Hive initialization and isolate support
The library entry point (lib/hive.dart) was refactored to support background isolates, indicated by the addition of a conditional import for 'dart:isolate' and a corresponding stub. The global Hive instance is now instantiated via 'HiveInstanceImpl' imported from 'src/impl/hive.dart', replacing the previous direct instantiation. Additionally, the file's structure was simplified by removing several internal part directives (binary readers/writers, type registry, etc.) and replacing them with new part imports for 'src/impl/box\_impl.dart' and 'src/impl/type\_registry.dart', signaling a reorganization of internal implementation files.
lib · medium confidence
Removal of internal type registry and adapter interfaces
The internal implementation of the type registry system has been removed. Specifically, the abstract interfaces and concrete implementations for managing type adapters and type IDs (including TypeAdapter, TypeRegistry, and TypeRegistryImpl) have been deleted from the codebase. This eliminates the ability to register custom type adapters via the previous registry mechanism, as the supporting classes and their associated logic are no longer present.
lib/src/registry · high confidence
Removed built-in Hive adapters for DateTime and Uint8List
The library no longer provides built-in TypeAdapter implementations for DateTime and Uint8List. Users who relied on these default adapters must now register their own custom adapters or use alternative serialization strategies for these types.
lib/src/adapters · high confidence
Test coverage
Migrated test suite from Hive to Isar
The test suite has been migrated from using the Hive library to the Isar library. This includes replacing mock-based test helpers with Isar-specific initialization and verification logic, updating the common test utilities to use Isar's API, and removing obsolete test files and assets that were specific to the previous implementation.
test · high confidence
Dependencies
Hive library updated to version 4.0.0-dev.2 with significant dependency changes
The Hive package has been updated to version 4.0.0-dev.2, marking a major version jump from 0.1.0. The Dart SDK requirement has been raised from '\>=2.2.2 \<3.0.0' to '\>=3.1.0 \<4.0.0'. Dependencies have been significantly restructured: 'path' and 'pointycastle' have been removed, while 'isar' (^4.0.0-dev.13) and 'meta' (^1.9.0) have been added. Dev dependencies have also been updated, with 'mockito' and 'pedantic' removed, and 'build\_runner', 'test', and 'very\_good\_analysis' added or updated.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.
Score
- CAI 46 → 55 (+8.7)
- Rubric changed (rubric-2026.08.19 → rubric-2026.09.15) — scores are not directly comparable.
Lenses
- Code Health 81 → 95 (+13.4)
- Architecture 100 → 100 (+0.0)
- Maturity 34 → 46 (+12.3)
- Readiness 40 → 49 (+8.3)
- Security 53 → 52 (-1.0)
- Domain Modelling 100 → 100 (+0.0)
Resolved (10)
- Coverage not included — suite not readable by the collector
- Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- No exposed public API
- PR-triggered workflow without a permissions block
- Test reliability not included
- complexity unreadable for .dart — churn × complexity hotspots could not be measured
- dormant codebase — no living knowledge left to concentrate
New (21)
- Documentation: no architecture or design documentation (README.md)
- Documentation: no usage examples (README.md)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- Job token omits the contents scope its checkout needs
- Medium: security finding (details withheld)
- No dependency advisory monitoring
- …and 1 more
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
isar/hive was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 23 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 1b4febe967370f790759823a5e154adc383e53d3 — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-955b9cee9818.