{"id":45166,"library":"iorejson","title":"iorejson","description":"A Node.js client for the Redis ReJSON module, built on top of ioredis (version 0.1.1). It provides a simple asynchronous API to manage JSON documents stored in Redis, supporting commands like JSON.SET, JSON.GET, JSON.DEL, and more. The library wraps ioredis and inherits its connection options. Compared to other Redis JSON clients, iorejson is lightweight and conforms to ioredis conventions. However, it is a low-traffic, early-stage package (last updated 2017) and may not be actively maintained. It does not support JSON.DEBUG, JSON.FORGET, or JSON.RESP. The package name 'rejson' was taken on npm, so it is published as iorejson.","status":"abandoned","version":"0.1.1","language":"javascript","source_language":"en","source_url":"https://github.com/evanhuang8/iorejson","tags":["javascript","rejson"],"install":[{"cmd":"npm install iorejson","lang":"bash","label":"npm"},{"cmd":"yarn add iorejson","lang":"bash","label":"yarn"},{"cmd":"pnpm add iorejson","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Underlying Redis client used for all connections and commands.","package":"ioredis","optional":false}],"imports":[{"note":"The package does not provide ES module exports; use CommonJS require.","wrong":"import Rejson from 'iorejson';","symbol":"Rejson","correct":"const Rejson = require('iorejson');"},{"note":"The default export is the Rejson constructor; named import is incorrect.","wrong":"import { Rejson } from 'iorejson';","symbol":"default","correct":"const Rejson = require('iorejson'); const client = new Rejson();"},{"note":"Methods are instance methods, not static. Must instantiate first.","wrong":"Rejson.set(...) // Calling a static method that does not exist","symbol":"Rejson instance methods","correct":"const client = new Rejson(); await client.set('key', '.', { foo: 'bar' });"}],"quickstart":{"code":"const Rejson = require('iorejson');\n\nasync function main() {\n  const client = new Rejson({\n    host: process.env.REDIS_HOST || 'localhost',\n    port: process.env.REDIS_PORT || 6379,\n    password: process.env.REDIS_PASSWORD || ''\n  });\n  // Connect (optional, await ready)\n  await client.connect();\n\n  // Set a JSON document\n  await client.set('doc', '.', {\n    name: 'John',\n    age: 30,\n    address: { city: 'NYC' }\n  });\n\n  // Get a JSON path\n  const name = await client.get('doc', '.name');\n  console.log('Name:', name); // 'John'\n\n  // Delete a path\n  await client.del('doc', '.address');\n\n  // Close connection\n  client.disconnect();\n}\n\nmain().catch(console.error);","lang":"javascript","description":"Demonstrates connecting, setting a JSON document, getting a nested value, deleting a path, and disconnecting."},"warnings":[{"fix":"Consider using an alternative like 'redis-json' directly or the official 'redis' client with JSON module support.","message":"The package is not actively maintained; last release 2017. Might have compatibility issues with newer Redis or Node versions.","severity":"gotcha","affected_versions":">=0.1.1"},{"fix":"Replace calls to .forget() with .del().","message":"JSON.FORGET is not supported; use JSON.DEL instead.","severity":"breaking","affected_versions":">=0.0.0"},{"fix":"Explicitly await client.connect() before issuing commands.","message":"Connection is automatic by default; if you do not call connect(), the client will try to connect on first command but may not emit ready.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Use CommonJS require or dynamic import().","message":"The package is not compatible with ES modules; require() must be used.","severity":"deprecated","affected_versions":">=0.0.0"}],"env_vars":null,"search_vec":"'0.1.1':16 '2017':74 'activ':79 'api':22 'asynchron':21 'built':10 'client':4,52 'command':31 'compar':47 'conform':57 'connect':45 'convent':60 'document':26 'earli':69 'early-stag':68 'howev':61 'inherit':43 'ioredi':14,41,59 'iorejson':1,53,102 'javascript':103 'json':25,51 'json.debug':85 'json.del':35 'json.forget':86 'json.get':34 'json.resp':88 'json.set':33 'last':72 'librari':39 'lightweight':55 'like':32 'low':66 'low-traff':65 'maintain':80 'manag':24 'may':76 'modul':9 'name':91 'node.js':3 'npm':96 'option':46 'packag':71,90 'provid':18 'publish':100 'redi':7,29,50 'rejson':8,92,104 'simpl':20 'stage':70 'store':27 'support':30,84 'taken':94 'top':12 'traffic':67 'updat':73 'version':15 'wrap':40","created_at":"2026-06-07T12:53:40.593438+00:00","updated_at":"2026-06-07T12:53:40.593438+00:00","problems":[{"fix":"Ensure you do const client = new Rejson(); then await client.connect();","cause":"Trying to call connect() on a Rejson instance without proper instantiation or using a wrong import.","error":"TypeError: client.connect is not a function"},{"fix":"Install the ReJSON module on your Redis server (e.g., using redis-stack or 'MODULE LOAD rejson.so').","cause":"The Redis server does not have the ReJSON module loaded.","error":"Error: ERR unknown command 'JSON.SET'"},{"fix":"Use CommonJS: const Rejson = require('iorejson');","cause":"Using ES module import syntax (import Rejson from 'iorejson') which is not supported.","error":"TypeError: Rejson is not a constructor"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"https://github.com/evanhuang8/iorejson#readme","github":"https://github.com/evanhuang8/iorejson","docs":null,"changelog":null,"pypi":null,"npm":"iorejson","openapi_spec":null,"status_page":null,"smithery":null,"categories":["database"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-07","next_check":"2026-09-05","install_tag":null}}