Provides an indexed local storage on top of the shared_preferences package.

Features

  • Build in index for all entries
  • Each entry is stored individually in local storage
  • clear() only removes entries under keyPrefix

Getting started

flutter pub add lazy_cache

Usage

import 'package:lazy_cache/lazy_cache.dart'

Example

import 'package:lazy_cache/lazy_cache.dart' as lazy;

void main() async {
  var sampleCache = lazy.Cache(keyPrefix: 'sampleCache');

  for (int i = 0; i < 10; i++) {
    await sampleCache.set(i.toString(), 'Sample data: $i');
  }

  for (int i = 0; i < 10; i++) {
    print(await sampleCache.get(i.toString()));
  }

  print(sampleCache.index);

  sampleCache.clear();
}

Limitation

  • Only support String data for simplicity.
  • toJson() and fromJson not provided as entries are not kept in memory.
  • On web, including browser extension, per entry maximum size is ~5M.

Additional information

Part of flutter_lazy.

Libraries

lazy_cache
Flutter lazy library