{"id":26921512,"url":"https://github.com/josh-development/docs-v1","last_synced_at":"2026-02-21T09:01:38.717Z","repository":{"id":41953167,"uuid":"285017627","full_name":"josh-development/docs-v1","owner":"josh-development","description":"Documentation for JOSH, synced with https://josh.evie.dev/testing","archived":false,"fork":false,"pushed_at":"2023-12-15T02:34:47.000Z","size":463,"stargazers_count":1,"open_issues_count":2,"forks_count":2,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-10-24T06:27:48.225Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/josh-development.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-08-04T15:15:07.000Z","updated_at":"2022-06-07T20:40:50.000Z","dependencies_parsed_at":"2025-04-01T23:34:50.864Z","dependency_job_id":"2f332a3e-e398-45ff-8aa7-40780a5f0bd8","html_url":"https://github.com/josh-development/docs-v1","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/josh-development/docs-v1","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/josh-development%2Fdocs-v1","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/josh-development%2Fdocs-v1/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/josh-development%2Fdocs-v1/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/josh-development%2Fdocs-v1/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/josh-development","download_url":"https://codeload.github.com/josh-development/docs-v1/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/josh-development%2Fdocs-v1/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29677881,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-21T06:23:40.028Z","status":"ssl_error","status_checked_at":"2026-02-21T06:23:39.222Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-04-01T23:34:43.590Z","updated_at":"2026-02-21T09:01:38.697Z","avatar_url":"https://github.com/josh-development.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"---\ndescription: \u003e-\n  JOSH is the JavaScript Object Storage Helper - a simple, effective, and\n  efficient database wrapper.\n---\n\n# Welcome to JOSH\n\n![Credits: See bottom of page](.gitbook/assets/JOSH\\_p\\_light.svg)\n\nJOSH is the JavaScript Object Storage Helper - a simple, effective, and efficient database wrapper. The idea of JOSH came out of my existing wrapper, Enmap, which suffers from two very unique but important flaws:\n\n* It cannot scale very well, being locked to better-sqlite3 which doesn't support live data updates\n* It requires the use of a cache, since most of its features, as used by most people, require the cache to be available.\n\nJOSH intends to solve both those problems that can't actually be resolved in Enmap itself, by moving away from the synchronous nature of better-sqlite3 and using [Promises](https://js.evie.dev/promises). In this way, JOSH can keep most of Enmap's features but add on a whole lot more.\n\nNow that this history lesson is done, what exactly _is_ JOSH except being a contrast to something I've already done?\n\nJOSH is a promise-based database wrapper that assists in quick prototyping and rapid development of Node.js applications that require data storage. It aims at removing some of the complexity of database management and communication by providing a _simple_ interface that anyone can pick up and use.\n\nJOSH can communicate with many different database systems through the use of _Providers_, which are a translation layer between the JOSH API and the Database system.\n\nJOSH is _not an ORM_ , in the sense that it does not handle either models or relationships. In fact, I personally do not like ORMs at all due to their inherent complexity, so don't expect those features here!\n\n_Logo Credits: _[_CyaCal _](https://github.com/cal3432)_and _[_GlitchyPSIX_](https://github.com/GlitchyPSIX)__\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjosh-development%2Fdocs-v1","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjosh-development%2Fdocs-v1","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjosh-development%2Fdocs-v1/lists"}