ClientDB is an open source in-memory database for enabling real-time web apps.

Overview

ClientDB

ClientDB is an open source in-memory database for enabling real-time web apps. Build fast, scalable apps that feel silky smooth for users.

Installation

Install clientdb with yarn

  yarn add @acapela/clientdb

Tech Stack

The entire codebase is fully written in Typescript.

Build Locally

Clone the project

  git clone [email protected]:acapela/clientdb.git

Go to the project directory

  cd clientdb

Install dependencies

  yarn install

Build the client

  cd clientdb
  yarn build

Running Tests

To run tests, run the following command while in clientdb/clientdb directory

  yarn test

Used By

This project is used by the following companies:

License

Apache-2.0

You might also like...

In-memory abstract-level database for Node.js and browsers.

memory-level In-memory abstract-level database for Node.js and browsers, backed by a fully persistent red-black tree. The successor to memdown and lev

Dec 27, 2022

javascript embeddable / in-memory database

LokiJS The super fast in-memory javascript document oriented database. Enable offline-syncing to your SQL/NoSQL database servers with SyncProxy !! Cod

Jan 9, 2023

đŸ—ƒïž An in-memory JS database optimized for large scale storage on the frontend.

BlinkDB is a in-memory JS database optimized for large scale storage on the frontend. import { many } from 'blinkdb'; const items = await many(userTa

Dec 23, 2022

A pure JavaScript Web Page to retrieve real-time OTP through a web page and generate/scan QR codes.

A pure JavaScript Web Page to retrieve real-time OTP through a web page and generate/scan QR codes.

2FA-Solver A pure JavaScript Web Page to retrieve real-time OTP through a web page and generate/scan QR codes. It can be used as an offline web page b

Dec 7, 2022

CodePlay is a Web App that helps the user to input HTML,CSS and JS code in the Code editors and display the resultant web page in real-time

CodePlay is a Web App that helps the user to input HTML,CSS and JS code in the Code editors and display the resultant web page in real-time

CodePlay A codepen clone Setup Clone repository Create and go to the directory where you want to place the repository cd my-directory Clone the proj

Sep 24, 2022

Memory lane is a website where you can create visual timelines of moments in time.

Memory lane is a website where you can create visual timelines of moments in time.

Memory Lane Moments in Time, All in One Place Description Memory Lane is a web app where users can create visually appealing, minimalistic timelines e

Jun 13, 2022

A simple in-memory time-based cache for both objects and function execution.

What is this? A simple in-memory time-based cache for both objects and function execution. How do I install it? You can install it by using the follow

Dec 15, 2022

An open-development real-time strategy (RTS) game project made in Construct.

Command & Construct This is an open-development real-time strategy (RTS) game project made in Construct. Read more about it and follow along the devel

Dec 20, 2022

An Obsidian plugin that provides commands for bulk enabling/disabling of plugins and CSS Snippets

An Obsidian plugin that provides commands for bulk enabling/disabling of plugins and CSS Snippets

An Obsidian plugin that provides commands for bulk enabling/disabling of plugins and CSS Snippets. Useful for debugging when you have many plugins or CSS snippets.

Dec 27, 2022
Comments
  • Explain what are the differences and advantages compared to RxDB

    Explain what are the differences and advantages compared to RxDB

    Sorry, it's not a real issue, but it's the only way I found to ask. So, what are the main differences between RxDB and ClientDB? What are the main advantages of clientDB over RxDB?

    Thanks

    opened by etienned 2
  • Error: db.add is not a function

    Error: db.add is not a function

    Hello and thank you for the library. Im trying to follow the tutorial but Im getting an error: Error: db.add is not a function

    import { defineEntity, createClientDb } from '@clientdb/core';
    
    interface Todo {
      id: string;
      title: string;
      doneAt: Date;
    }
    
    const todoEntity = defineEntity<Todo>({
      name: 'todo',
      fields: ['id', 'title', 'doneAt'],
    });
    
    const db = createClientDb([todoEntity]);
    
    const todo = db.add(todoEntity, {
      id: 'todo-0',
      title: 'Buy milk',
      doneAt: null,
    });
    

    You can check this at this URL: https://stackblitz.com/edit/react-ts-xk1t2c?file=App.tsx Is the documentation outdated ?

    opened by mehdi-cit 1
  • [bug] run `yarn core test` failed

    [bug] run `yarn core test` failed

    hi,I tried to run the repo and found some problems.

    env: node v16.13.1 yarn v3.2.1 macOS 12.2

    step:

    1. clone
    2. install
    3. run yarn core test

    expect: no failed tests

    actually: has some failed test.

    ps: package.json has no test scripts

    opened by Otto-J 1
Releases(v0.1.11)
  • v0.1.11(Jul 18, 2022)

    0.1.11 (2022-07-18)

    Bug Fixes

    • docs: update changes folder names in root readme file (3c1dd2c3)

    Chores

    • docs: update docusaurus version and deploy news docs (d66a9a7a)
    Source code(tar.gz)
    Source code(zip)
  • v0.1.10(Jul 18, 2022)

  • v0.1.9(Jul 18, 2022)

  • v0.1.8(Jul 2, 2022)

    0.1.8 (2022-07-02)

    Bug Fixes

    • do not publish major version (ba89f15a)
    • use correct npm auth token env var (0062aa43)
    • use npm publish (01916b6f)
    • use correct publish command (d35fe984)
    • publish workflow (4d75abd2)

    Chores

    • use yarn v3 (12de5ccb)

    CI

    • add build and release workflow (51886c5c)
    Source code(tar.gz)
    Source code(zip)
Owner
Acapela
Making async work more accessible
Acapela
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till mÀnniskor pÄ flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
Open source project that make it easy to sync your calendars in real time.

Syncit 2.0 - We make it easy to sync your calendars in real time. This is an Open source project! Installation Run yarn in order to install all depend

Tikal Knowledge, Ltd. 6 Dec 15, 2022
Visualize, modify, and build your database with dbSpy! An open-source data modeling tool to facilitate relational database development.

Visualize, modify, and build your database with dbSpy! dbSpy is an open-source data modeling tool to facilitate relational database development. Key F

OSLabs 115 Dec 22, 2022
Palaemon is an open-source developer tool for monitoring health and resource metrics of Kubernetes clusters and analyzing Out of Memory (OOMKill) errors

Palaemon ?? ?? An Electron based developer tool for Kubernetes cluster monitoring and error analysis Palaemon is a Greek, child sea-god who came to ai

OSLabs Beta 99 Dec 28, 2022
Lightweight (zero dependencies) library for enabling cross document web messaging on top of the MessageChannel API.

Lightweight (zero dependencies) library for enabling cross document web messaging on top of the MessageChannel API.

LironH 4 Jul 15, 2022
The iofod SDK provides developers with the ability to interact with the main iofod interface within the Web worker, enabling rapid development of iofod extensions through the SDK.

iofod-sdk English | çź€äœ“äž­æ–‡ The iofod SDK provides developers with the ability to interact with the main iofod interface within the Web worker, enabling

iofod, Inc. 47 Oct 17, 2022
startupDB is an Express middleware function implementing a high-performance in-memory database

startupDB startupDB is a database designed to create REST APIs. It is implemented as an Express middleware function and allows for easy implementation

Jeroen de Vries 8 Jul 26, 2022
An exercise in building a very minimal (and very stupid) in-memory SQL-like database for educational purposes.

Stupid Database This is an exercise in building a very minimal (and very stupid) in-memory SQL-like database for educational purposes. None of this co

Fabio Akita 196 Dec 20, 2022