I made an npm module based on IndexedDB

Using IndexedDB complicates my code.
Because of that, there are good libraries like localForage, dexie.js, idb, etc.
But it’s not my style.
So I made a small library module.

It doesn’t have as many features as the famous modules, but
It became a good module for me making small spa and pwa.

If you are interested, try it out too! XD

A link? : )

Oops… I’m sorry. I forgot. XD XD XD

I added a link.

1 Like

How do you find the balance between the restrictions and the simplicity? eg. roughly what percentage of your use do you find this module is enough to meet your needs?

1 Like

It’s 100% for me.
But about 80% for others?

===

I think IndexedDB is powerful. But unfamiliar concepts made me difficult, and I don’t want to consider these. But if I want to use IndexedDB, I need to consider it. These make my code long and complicated.
-DB version system and update
-Transaction life cycle
-Store and cursor separated according to purpose when using DB

I only deal small and simple SPAs and PWAs, so I didn’t have to deal with large DBs. I only need to use the most basic functions of the DB.
-find
-insert
-update
-delete

The already famous modules were disappointed in the following points.
-English or chinese document (I’m Not Good English)
-Unfamiliar interface.

I was already familiar with the Meteor framework and MongoDB, so I tried to use miniMongo, but the interfaces between minimongo and npm minimongo built into Meteor were different.
So I created a module based on the following criteria.
-Automatic setting for unfamiliar concepts
-Basic function support
-Mongodb style interface in meteor framework

I know that there is a fatal inconvenience in the module I made.
-Multi query not supported
-Option operators such as skip or sort are not supported

I intend to improve the fatal discomfort later.

2 Likes

I’ve improved a lot of niceDB.

  • Easier to use.
  • Supports multiple queries.
  • Supports multi-sort.