FLUTTER ECOSYSTEM

chuyentt/localstore

chuyentt/localstore open-source repository details.

Capa do projeto localstore
Stars
24
Forks
23
Último push (UTC)
11 de abr. de 2024
Status do projeto
Ativo
Chuyen Tran Trung GitHub avatar
GITHUB User

Chuyen Tran Trung ↗

GMSVietnameSite oficial ↗
LinguagensDartC++CMakeHTMLRubyCSwiftKotlinObjective-C

Pacotes publicados por este repositório

Dependências usadas

Lista de dependências 9 itens
  • flutter{"sdk":"flutter"}
  • path^1.8.2
  • path_provider^2.0.11
  • flutter_testDesenvolvimento{"sdk":"flutter"}
  • flutter_lintsDesenvolvimento^3.0.2
  • mockitoDesenvolvimento^5.0.0
  • lintsDesenvolvimento^3.0.0
  • path_provider_platform_interfaceDesenvolvimento^2.1.2
  • plugin_platform_interfaceDesenvolvimento^2.1.8

README original

Texto original em inglês. Visite o GitHub para a versão atual.

Expandir / recolher README

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

https://user-images.githubusercontent.com/6267856/112655041-94e72100-8e82-11eb-8d9f-673f0f2e1b80.gif

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.