Analysis updated 2026-06-21
Add data persistence to a small CLI tool without setting up a database server.
Store app settings or user data in an Electron desktop app using a local JSON file.
Prototype a web API quickly with a JSON file as the data store before switching to a real database.
Save and retrieve data in a browser-based app using localStorage through the same lowdb API.
| typicode/lowdb | jlmakes/scrollreveal | redux-saga/redux-saga | |
|---|---|---|---|
| Stars | 22,528 | 22,501 | 22,472 |
| Language | JavaScript | JavaScript | JavaScript |
| Setup difficulty | easy | easy | moderate |
| Complexity | 1/5 | 2/5 | 3/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Lowdb is a small, simple database that stores data as a JSON file on your computer or device. Think of it like a notepad your app can read and write to, rather than a full database server. It solves the problem of needing to save and retrieve data without setting up complex database infrastructure. It works by reading a JSON file into memory as a plain JavaScript object, letting you modify it using regular JavaScript methods, then saving it back to the file when you are done. Because your data is just a JavaScript object, you search and filter it using the same array methods you already know, like finding an item by its ID or sorting a list by a field. You would use lowdb when building small projects, prototypes, desktop apps built with Electron, command-line tools, or any situation where you want persistent data storage without the overhead of a database server. It also supports storing data in the browser's local storage or session storage instead of a file. The library supports TypeScript for type checking, meaning you can define the shape of your data and catch mistakes before running your code. It can also be extended with additional utility libraries. It automatically switches to an in-memory mode during automated tests to keep things fast. Lowdb is a JavaScript library installable via npm.
A tiny JavaScript library that uses a local JSON file as a simple database, read and write persistent data with plain JavaScript array methods, no database server required.
Mainly JavaScript. The stack also includes JavaScript, TypeScript, Node.js.
MIT license, use freely for any purpose including commercial, keep the copyright notice.
Setup difficulty is rated easy, with roughly 5min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.