{"id":15659624,"url":"https://github.com/revolunet/react-orbitdb","last_synced_at":"2026-03-07T20:32:13.934Z","repository":{"id":39614484,"uuid":"270992862","full_name":"revolunet/react-orbitdb","owner":"revolunet","description":"react hooks and providers for dealing with ipfs orbit-db datasources","archived":false,"fork":false,"pushed_at":"2023-03-08T01:33:01.000Z","size":4231,"stargazers_count":24,"open_issues_count":9,"forks_count":5,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-12T09:43:34.802Z","etag":null,"topics":["decentralized","ipfs","orbitdb","react","react-hooks"],"latest_commit_sha":null,"homepage":"https://revolunet.github.io/react-orbitdb","language":"JavaScript","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/revolunet.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-06-09T12:10:42.000Z","updated_at":"2024-05-30T10:54:31.000Z","dependencies_parsed_at":"2024-10-23T06:25:29.216Z","dependency_job_id":"56fdf012-8eb8-4c98-a37e-1689fcc5898f","html_url":"https://github.com/revolunet/react-orbitdb","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/revolunet/react-orbitdb","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/revolunet%2Freact-orbitdb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/revolunet%2Freact-orbitdb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/revolunet%2Freact-orbitdb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/revolunet%2Freact-orbitdb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/revolunet","download_url":"https://codeload.github.com/revolunet/react-orbitdb/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/revolunet%2Freact-orbitdb/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30229744,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-07T19:01:10.287Z","status":"ssl_error","status_checked_at":"2026-03-07T18:59:58.103Z","response_time":53,"last_error":"SSL_read: 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":["decentralized","ipfs","orbitdb","react","react-hooks"],"created_at":"2024-10-03T13:17:52.515Z","updated_at":"2026-03-07T20:32:13.906Z","avatar_url":"https://github.com/revolunet.png","language":"JavaScript","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"readme":"# react-orbitdb\n\n[![](https://img.shields.io/badge/License-Apache--2.0-yellow.svg)](https://opensource.org/licenses/Apache-2.0)\n[![](https://img.shields.io/npm/v/react-orbitdb.svg)](https://www.npmjs.com/package/react-orbitdb)\n\nreact hooks and providers for dealing with [IPFS](https://ipfs.io) [orbit-db datasources](https://github.com/orbitdb/orbit-db).\n\nYou can see a demo here : https://revolunet.github.io/react-orbitdb\n\n## Provider\n\n`OrbitProvider` creates a shared IPFS Node and an orbit-db instance.\n\n```js\nimport { OrbitProvider } from \"react-orbitdb\";\n\nconst App = () =\u003e \u003cOrbitProvider\u003e...\u003c/OrbitProvider\u003e;\n```\n\n- `config` prop with [ipfs configuration](https://github.com/ipfs/js-ipfs/blob/master/docs/CONFIG.md) can be passed to the provider. (see the [default](./src/ipfs-config.js))\n\n## Hooks\n\n#### useOrbitDb\n\n`useOrbitDb` connects and return records from an OrbitDB database. `records` are updated in real-time.\n\n```jsx\nimport { useOrbitDb } from \"react-orbitdb\";\n\nconst MyCmp = () =\u003e {\n  const { db, records } = useOrbitDb(\"/orbitdb/somehash/my-db, {\n    create: true,\n    type: 'eventlog'\n  });\n\n  return (\n    \u003cdiv\u003e\n      {records \u0026\u0026\n        records.map((record) =\u003e \u003cdiv key={record.id}\u003e{record.message}\u003c/div\u003e)}\n    \u003c/div\u003e\n  );\n};\n```\n\n- `options` : [OrbitDB.open options](https://github.com/orbitdb/orbit-db/blob/master/API.md#orbitdbopenaddress-options)\n  - the `options.create` and `options.public` values set the database world-writeable when you first create it.\n\n#### useOrbit\n\n`useOrbit` is included in `OrbitProvider`, you should not need it\n\n#### useIpfs\n\n`useIpfs` is included in `OrbitProvider`, you should not need it\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frevolunet%2Freact-orbitdb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frevolunet%2Freact-orbitdb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frevolunet%2Freact-orbitdb/lists"}