Search packages, repositories and app categories

GitHub repositorychuyentt/localstore

localstore

chuyentt/localstore open-source repository details.

localstore project cover
Stars
24
Forks
23
Last push (UTC)
Apr 11, 2024
Project status
Active

Original README

English project snapshot. Visit GitHub for the latest content.

Localstore

pub package

Between SQL or NoSQL, there's no one best database, there's the right database for your specific project. Localstore is a JSON file-based storage package (localstorage) provides a persistent repository for simple NoSQL database.

Localstore (NoSQL) SQLite (SQL)
Data format File path (collection) Table
Data item JSON Document (doc) Record / Row
Scalability Horizontal Limited vertical
Organization Schema-less Fixed schema

Demo Screenshot

UML diagram

Localstore UML diagram

Getting Started

  1. Calling WidgetsFlutterBinding.ensureInitialized(); in main() before calling runApp():
void main() {
  WidgetsFlutterBinding.ensureInitialized();
  runApp(MyApp());
}
  1. Import import 'package:localstore/localstore.dart';
import 'package:flutter/material.dart';
import 'package:localstore/localstore.dart';

void main() {
  WidgetsFlutterBinding.ensureInitialized();
  runApp(MyApp());
}
  1. Creates an instance using the default Localstore
final db = Localstore.instance;

or using anywhere in your project.

  1. Creates new item
// gets new id
final id = db.collection('todos').doc().id;

// save the item
db.collection('todos').doc(id).set({
  'title': 'Todo title',
  'done': false
});
  1. Gets item by id
final data = await db.collection('todos').doc(id).get();
  1. Delete item by id
db.collection('todos').doc(id).delete();
  1. Fetch the documents for the collection
final items = await db.collection('todos').get();
  1. Using stream
final stream = db.collection('todos').stream;

Features and bugs

Please file feature requests and bugs at the issue tracker.

Chuyen Tran Trung GitHub avatar
GitHub author

Chuyen Tran Trung ↗

LanguagesDartC++CMakeHTMLRubyCSwiftKotlinObjective-C

Packages published by this repository

Dependencies used

Dependency list 9 items

  • flutter{"sdk":"flutter"}
  • path^1.8.2
  • path_provider^2.0.11
  • flutter_testDevelopment{"sdk":"flutter"}
  • flutter_lintsDevelopment^3.0.2
  • mockitoDevelopment^5.0.0
  • lintsDevelopment^3.0.0
  • path_provider_platform_interfaceDevelopment^2.1.2
  • plugin_platform_interfaceDevelopment^2.1.8

How do I choose a repository?

Start with your use case, compare repository activity, and check the original project before adopting it.

  1. Search by repository name, owner or description, then narrow the results by topic.
  2. Compare stars, forks and recent pushes. Stars show community interest, not a guarantee of quality.
  3. Read the README, license and issues on GitHub before using a project.

Sources and maintenance

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗