DEV Community

Cover image for I Built a Lightweight Embedded Database for Node.js — LioranDB
Swaraj Puppalwar
Swaraj Puppalwar

Posted on

I Built a Lightweight Embedded Database for Node.js — LioranDB

I'm a 17-year-old full stack developer and CTO at Lioran Group.

A few months ago, I started building a fun prototype for a lightweight and embedded database for my own projects. While working on it, I realized it was saving me a lot of development time because the syntax is similar to MongoDB, while staying fully NoSQL and file-based.

Over the last 5 months, I focused on improving stability, performance, and reliability.

One of the major advantages of LioranDB is that it can run anywhere and is designed to be lightweight and memory-efficient.

For 1 million documents:

  • 200 MB RAM
  • 300 MB storage (including WAL + indexes)

To install:

npm i @liorandb/core
Enter fullscreen mode Exit fullscreen mode

Sample Code:

import { LioranManager } from "@liorandb/core";

const manager = new LioranManager({
  // optional: where databases live on disk
  // rootPath: "./data",
});

const db = await manager.db("app");
const users = db.collection("users");

await users.insertOne({ email: "a@b.com", plan: "free" });

const found = await users.findOne({ email: "a@b.com" });
console.log(found);

await manager.close();
Enter fullscreen mode Exit fullscreen mode

We are actively collecting developer feedback. If you find this project interesting, feel free to join the Discord server for discussions, support, and feature suggestions.

Discord: https://discord.gg/WsWWThjPMp

Documentation: https://db.lioransolutions.com/docs/embedded/getting-started

Thanks to everyone who is willing to try the project and share feedback.

Top comments (0)