JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 55
  • Score
    100M100P100Q25778F
  • License MIT

Local database for javascript's projects

Package Exports

  • lite-db-js
  • lite-db-js/dist/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (lite-db-js) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

lite-db-js

lite-db-js is a lightweight JavaScript library that simulates the structure of Firestore locally. It allows you to create collections, add documents, perform complex queries, and add listeners to document changes. This library is ideal for applications that need a local database with Firestore-like capabilities.

Table of Contents

  1. Introduction
  2. Features
  3. Installation
  4. Usage

Introduction

lite-db-js aims to provide a local database solution with a structure and functionalities similar to Firestore. This library is particularly useful for applications that require a local database to manage collections and documents, and to listen for changes in data.

Features

  • Create collections and add documents.
  • Perform complex queries on collections.
  • Add listeners for document and collection changes.
  • Lightweight and easy to integrate.

Installation

You can install lite-db-js using npm:

npm install lite-db-js

Usage

Initialization

To use lite-db-js, you need to import the DB class and create an instance:

import DB from "lite-db-js";

const db = new DB();

Basic Operations

Creating a Collection

To create a collection, use the collection method on your DB instance:

const usersCollection = db.collection("users");

Adding documents

To add documents to a collection use the method 'add' You can pass an array or a single element

const users = [
  {
    name: "John",
    age: 25,
    email: "john@example.com",
  },
  {
    name: "Alice",
    age: 33,
    email: "alice@example.com",
  },
];

usersCollection.add(users);

Querying Documents

You can perform queries on collections using methods like 'where', 'orderBy'.

const query = usersCollection.where("age", ">", 30);

console.log(query.count); // Numbers of documents

if (query.empty === false) {
  query.docs.forEach((doc) => {
    console.log(doc.data); // Document data
  });
}

Listening to Document Changes

You can listen to real-time updates on a collection or document using 'on':

const listener = query.on((snapshot) => {
  if (snapshot.empty === false) {
    snapshot.docs.forEasch((doc) => {
      console.log(doc.data); // Document data
    });
  }
});

listener.remove();

const document = query.doc("uidDocument").set({
  name: "Alex",
  age: 44,
  email: "alex@example.com",
});

const docListener = document.on((snapshot) => {
  if (snapshot.exists) {
    console.log(snapshot.data); // Document data
  }
});

docListener.remove();