{"id":43752,"library":"reheat","title":"reheat","description":"A Node.js ORM for RethinkDB that simplifies data access with features like connection pooling, model lifecycle hooks, schema definition, validation, and relationship management. Current version is 1.0.0-beta.10, supporting RethinkDB 1.15.x and newer. It provides a declarative Model definition, automatic validation, and query builder integration with ReQL. Differentiators include lifecycle hooks (beforeUpdate, afterDestroy), schema-based validation, and ability to convert req.query to ReQL. Considered beta software with API fluctuations expected before 1.0.0.","status":"active","version":"1.0.0-beta.10","language":"javascript","source_language":"en","source_url":"https://github.com/jmdobry/reheat","tags":["javascript","orm","odm","model","schema","rethink","rethinkdb","nosql","database"],"install":[{"cmd":"npm install reheat","lang":"bash","label":"npm"},{"cmd":"yarn add reheat","lang":"bash","label":"yarn"},{"cmd":"pnpm add reheat","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Peer dependency for RethinkDB driver","package":"rethinkdb","optional":false}],"imports":[{"note":"Package uses CommonJS, not ES modules.","wrong":"import reheat from 'reheat';","symbol":"reheat","correct":"const reheat = require('reheat');"},{"note":"CommonJS pattern, destructuring works but not from named export.","wrong":"const { Connection } = require('reheat');","symbol":"Connection","correct":"const Connection = reheat.Connection;"},{"note":"Model is a property of the default export, not a named export.","wrong":"import { Model } from 'reheat';","symbol":"Model","correct":"const Model = reheat.Model;"}],"quickstart":{"code":"const reheat = require('reheat');\n\nconst connection = new reheat.Connection({\n  db: 'local'\n});\n\nconst Post = reheat.defineModel('Post', {\n  tableName: 'post',\n  connection: connection\n});\n\nconst post = new Post({\n  author: 'Jason Dobry',\n  title: 'How to reheat your app'\n});\n\npost.isNew(); // true\n\npost.save().then(function (saved) {\n  console.log(saved.toJSON());\n  saved.isNew(); // false\n});","lang":"javascript","description":"Shows how to connect to RethinkDB, define a model, create an instance, and save it with promises."},"warnings":[{"fix":"Pin to exact version and monitor changelog for breaking changes.","message":"Package is in beta (v1.0.0-beta.10) and API may change until stable release.","severity":"deprecated","affected_versions":"<1.0.0"},{"fix":"Lock dependency to minor version range (e.g., 1.0.0-beta.10).","message":"Version 1.0.0-beta.x may introduce breaking changes without major version bump.","severity":"breaking","affected_versions":">=1.0.0-beta.0 <1.0.0"},{"fix":"Ensure RethinkDB server is running and accessible.","message":"RethinkDB connection requires running RethinkDB instance; no fallback or in-memory mode.","severity":"gotcha","affected_versions":">=0.0.0"}],"env_vars":null,"search_vec":"'1.0.0':28,75 '1.15':32 'abil':61 'access':10 'afterdestroy':55 'api':71 'automat':42 'base':58 'beforeupd':54 'beta':68 'beta.10':29 'builder':46 'connect':14 'consid':67 'convert':63 'current':25 'data':9 'databas':84 'declar':39 'definit':20,41 'differenti':50 'expect':73 'featur':12 'fluctuat':72 'hook':18,53 'includ':51 'integr':47 'javascript':76 'lifecycl':17,52 'like':13 'manag':24 'model':16,40,79 'newer':35 'node.js':3 'nosql':83 'odm':78 'orm':4,77 'pool':15 'provid':37 'queri':45 'reheat':1 'relationship':23 'req.query':64 'reql':49,66 'rethink':81 'rethinkdb':6,31,82 'schema':19,57,80 'schema-bas':56 'simplifi':8 'softwar':69 'support':30 'valid':21,43,59 'version':26 'x':33","created_at":"2026-06-05T17:01:18.499856+00:00","updated_at":"2026-06-05T17:01:18.499856+00:00","problems":[{"fix":"Install rethinkdb: npm install rethinkdb --save","cause":"Missing peer dependency rethinkdb.","error":"Error: Cannot find module 'rethinkdb'"},{"fix":"Use: const reheat = require('reheat'); then new reheat.Connection(...)","cause":"Incorrect import or require path.","error":"TypeError: reheat.Connection 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/jmdobry/reheat","github":"https://github.com/jmdobry/reheat","docs":null,"changelog":null,"pypi":null,"npm":"reheat","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-05","next_check":"2026-09-03","install_tag":null}}