{"_id":"@activityplug/hollo","_rev":"4-cdc747d7c06155fc5c8fb9c0ed23b15a","name":"@activityplug/hollo","dist-tags":{"rc":"1.0.0-rc.0","latest":"1.0.2"},"versions":{"1.0.0-rc.0":{"name":"@activityplug/hollo","version":"1.0.0-rc.0","keywords":["activitypub","fediverse","hollo","typescript"],"license":"Apache-2.0 OR MIT","_id":"@activityplug/hollo@1.0.0-rc.0","maintainers":[{"name":"realignist","email":"hazelee@realignist.me"}],"homepage":"https://github.com/Nebu1eto/activityplug","bugs":{"url":"https://github.com/Nebu1eto/activityplug/issues"},"dist":{"shasum":"cb8054eac51cc20fc7085298230f67eb266399ab","tarball":"https://registry.npmjs.org/@activityplug/hollo/-/hollo-1.0.0-rc.0.tgz","fileCount":6,"integrity":"sha512-WA+hQwH4WEYCFlKtpVe31FZSaYbNs9jD6hooaLTGG0c+3sVuam873uz2N5ilCc57yiu384nOxCOKgc0lSo+x1Q==","signatures":[{"sig":"MEUCIF1ldz/JIGp1XiMj66MwFVXtWIsN0PnTMZxtO5f9aAZiAiEAvEi5g1vC1rOKDVl/DDh97LP+SyqsUqsRAQ6ivwW0RDk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31444},"main":"./dist/index.mjs","type":"module","types":"./dist/index.d.mts","engines":{"node":">=26"},"exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"}},"scripts":{"test":"node --experimental-strip-types ../../scripts/run-package-tests.ts","build":"rolldown -c ../../rolldown.config.ts --configLoader native","pack:dry-run":"pnpm pack --dry-run"},"_npmUser":{"name":"realignist","email":"hazelee@realignist.me"},"repository":{"url":"git+https://github.com/Nebu1eto/activityplug.git","type":"git","directory":"packages/hollo"},"description":"Hollo adapter for ActivityPlug.","directories":{},"sideEffects":false,"_nodeVersion":"26.0.0","dependencies":{"ky":"^2.0.2","zod":"^4.4.3","@activityplug/mastodon-base":"^1.0.0-rc.0"},"_hasShrinkwrap":false,"devDependencies":{"@activityplug/e2e-fixtures":"0.0.1-rc.0","@activityplug/test-fixtures":"0.0.0"},"peerDependencies":{"@activityplug/core":"^1.0.0-rc.0"},"_npmOperationalInternal":{"tmp":"tmp/hollo_1.0.0-rc.0_1786068145862_0.3724214806948931","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@activityplug/hollo","version":"1.0.0","keywords":["activitypub","fediverse","hollo","typescript"],"license":"Apache-2.0 OR MIT","_id":"@activityplug/hollo@1.0.0","maintainers":[{"name":"realignist","email":"hazelee@realignist.me"}],"homepage":"https://github.com/Nebu1eto/activityplug","bugs":{"url":"https://github.com/Nebu1eto/activityplug/issues"},"dist":{"shasum":"58ecc090c22075e5a6164a51fa9c28387d417993","tarball":"https://registry.npmjs.org/@activityplug/hollo/-/hollo-1.0.0.tgz","fileCount":6,"integrity":"sha512-GL44BfJINOdnlW60WJMQ/kqrzG5t3cnVDbZJy0cKzVuXUE7ATsOZrTkS1vs8rbLdS0lrsqeTnINIep8S0hB8lg==","signatures":[{"sig":"MEUCIGBF1RCnDnh69Glg5iuGuzFcWnXsFT+KMsKEoNRsFmRXAiEA3mON5ziK3+9w95Cx4fNXC4WJrzr2npFS0vSk+ZtfnQQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@activityplug%2fhollo@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31424},"main":"./dist/index.mjs","type":"module","types":"./dist/index.d.mts","engines":{"node":">=26"},"exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"}},"scripts":{"test":"node --experimental-strip-types ../../scripts/run-package-tests.ts","build":"rolldown -c ../../rolldown.config.ts --configLoader native","pack:dry-run":"pnpm pack --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:dcd0313c-b1fe-4db8-bb8c-ad08b9c7e867"}},"repository":{"url":"git+https://github.com/Nebu1eto/activityplug.git","type":"git","directory":"packages/hollo"},"description":"Hollo adapter for ActivityPlug.","directories":{},"sideEffects":false,"_nodeVersion":"26.7.0","dependencies":{"ky":"^2.0.2","zod":"^4.4.3","@activityplug/mastodon-base":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"@activityplug/e2e-fixtures":"0.0.1","@activityplug/test-fixtures":"0.0.0"},"peerDependencies":{"@activityplug/core":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/hollo_1.0.0_1786073289054_0.3976374354736061","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@activityplug/hollo","version":"1.0.1","keywords":["activitypub","fediverse","hollo","typescript"],"license":"Apache-2.0 OR MIT","_id":"@activityplug/hollo@1.0.1","maintainers":[{"name":"realignist","email":"hazelee@realignist.me"}],"homepage":"https://github.com/Nebu1eto/activityplug","bugs":{"url":"https://github.com/Nebu1eto/activityplug/issues"},"dist":{"shasum":"d21b4f7517e3c41870fcc176ad05cfd7adc7621e","tarball":"https://registry.npmjs.org/@activityplug/hollo/-/hollo-1.0.1.tgz","fileCount":6,"integrity":"sha512-i/9QLP3LqGoCR4EPYgSdQogAb64DMBupryGDRnhnacaYsDMm/JZm8Kvc6bUg0o9s38R8AZidvAik71u/2uiFLw==","signatures":[{"sig":"MEYCIQD1toGHEG+ewmrJi4d+seREcwbWXeF8a5kd2bue/DBtkAIhAPkrtrQ5dM50Qx4OureN1ODQ6+isA8HgNEVEPkbDhFgU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@activityplug%2fhollo@1.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":31424},"main":"./dist/index.mjs","type":"module","types":"./dist/index.d.mts","engines":{"node":">=26"},"exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"}},"scripts":{"test":"node --experimental-strip-types ../../scripts/run-package-tests.ts","build":"rolldown -c ../../rolldown.config.ts --configLoader native","pack:dry-run":"pnpm pack --dry-run"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:dcd0313c-b1fe-4db8-bb8c-ad08b9c7e867"}},"repository":{"url":"git+https://github.com/Nebu1eto/activityplug.git","type":"git","directory":"packages/hollo"},"description":"Hollo adapter for ActivityPlug.","directories":{},"sideEffects":false,"_nodeVersion":"26.7.0","dependencies":{"ky":"^2.0.2","zod":"^4.4.3","@activityplug/mastodon-base":"^1.0.1"},"_hasShrinkwrap":false,"devDependencies":{"@activityplug/e2e-fixtures":"0.0.2","@activityplug/test-fixtures":"0.0.0"},"peerDependencies":{"@activityplug/core":"^1.0.1"},"_npmOperationalInternal":{"tmp":"tmp/hollo_1.0.1_1786081425988_0.24581672753098616","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@activityplug/hollo","version":"1.0.2","description":"Hollo adapter for ActivityPlug.","keywords":["activitypub","fediverse","hollo","typescript"],"homepage":"https://github.com/Nebu1eto/activityplug","bugs":{"url":"https://github.com/Nebu1eto/activityplug/issues"},"license":"Apache-2.0 OR MIT","repository":{"type":"git","url":"git+https://github.com/Nebu1eto/activityplug.git","directory":"packages/hollo"},"type":"module","sideEffects":false,"main":"./dist/index.mjs","types":"./dist/index.d.mts","exports":{".":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"}},"dependencies":{"ky":"^2.0.2","zod":"^4.4.3","@activityplug/mastodon-base":"^1.0.2"},"devDependencies":{"@activityplug/test-fixtures":"0.0.0","@activityplug/e2e-fixtures":"0.0.3"},"peerDependencies":{"@activityplug/core":"^1.0.2"},"engines":{"node":">=26"},"scripts":{"build":"rolldown -c ../../rolldown.config.ts --configLoader native","pack:dry-run":"pnpm pack --dry-run","test":"node --experimental-strip-types ../../scripts/run-package-tests.ts"},"_nodeVersion":"26.7.0","_id":"@activityplug/hollo@1.0.2","dist":{"integrity":"sha512-tj8jxD9xB4If6jgk81zQsVCUfMEi+k/zlGe3cY2NH9eF4XUR4PkNOC3gTm4KCA/sNKZQcxwG6DONtpXPCb6lgA==","shasum":"bde5fb659f5203a6fda6ad012b8ae9f65795f06c","tarball":"https://registry.npmjs.org/@activityplug/hollo/-/hollo-1.0.2.tgz","fileCount":6,"unpackedSize":31424,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@activityplug%2fhollo@1.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIGSw/92gV1EkbXG5Jt/Y7dkPbXIv0rmzwTy8aJRRtk6pAiEA1BcQmuP/yXSZP7+elDTIGpNv4L20Y+OoiUqQ3FHnx9w="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:dcd0313c-b1fe-4db8-bb8c-ad08b9c7e867"}},"directories":{},"maintainers":[{"name":"realignist","email":"hazelee@realignist.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/hollo_1.0.2_1786235380342_0.7340924731233023"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-07T02:02:25.695Z","modified":"2026-08-09T00:29:40.790Z","1.0.0-rc.0":"2026-08-07T02:02:26.024Z","1.0.0":"2026-08-07T03:28:09.259Z","1.0.1":"2026-08-07T05:43:46.131Z","1.0.2":"2026-08-09T00:29:40.492Z"},"bugs":{"url":"https://github.com/Nebu1eto/activityplug/issues"},"license":"Apache-2.0 OR MIT","homepage":"https://github.com/Nebu1eto/activityplug","keywords":["activitypub","fediverse","hollo","typescript"],"repository":{"type":"git","url":"git+https://github.com/Nebu1eto/activityplug.git","directory":"packages/hollo"},"description":"Hollo adapter for ActivityPlug.","maintainers":[{"name":"realignist","email":"hazelee@realignist.me"}],"readme":"`@activityplug/hollo`\n=====================\n\n`@activityplug/hollo` maps Hollo's Mastodon-compatible API and Hollo-specific\nextensions to the ActivityPlug client contract. Use it with\n`@activityplug/core` when an application connects directly to Hollo.\n\n\nInstallation\n------------\n\n~~~~ sh\npnpm add @activityplug/hollo\npnpm add @activityplug/core\n~~~~\n\nNode.js 26 or newer is required. Both packages use ECMAScript modules.\n`@activityplug/core` is a peer dependency, so the application controls the\ncompatible core version.\n\nThe package root contains the complete public adapter API:\n\n~~~~ ts\nimport * as activityplug from \"@activityplug/hollo\";\n~~~~\n\n\nCreate a client\n---------------\n\nThe public options inherit transport-related options from\n`@activityplug/mastodon-base`. Hollo streaming remains unsupported even if a\n`webSocket` factory is supplied.\n\n~~~~ ts\nimport {\n  createActivityPlugClient,\n  type RemoteAuthority,\n} from \"@activityplug/core\";\nimport { createHolloAdapter } from \"@activityplug/hollo\";\n\nexport function createHolloClient(\n  origin: string,\n  remoteAuthority: RemoteAuthority,\n) {\n  return createActivityPlugClient({\n    adapter: createHolloAdapter(),\n    origin,\n    remoteAuthority,\n  });\n}\n~~~~\n\nThe remote authority must use a transport that applies the deployment's origin,\nDNS, redirect, and response-size policies. See the\n[security model](../../docs/security-model.md) for the transport boundary.\n\nInstance detection refines version-dependent decisions:\n\n~~~~ ts\nconst profile = await client.instances.detect();\nconst relationship = profile.capabilities[\"accounts.relationships\"];\n\nif (relationship.status === \"supported\") {\n  // Relationship lookup is verified for Hollo 0.1.0 or newer.\n}\n~~~~\n\nAn unknown version keeps relationship lookup `unknown`; versions older than\n0.1.0 report it as `unsupported`.\n\n\nAuthentication\n--------------\n\nThe adapter inherits OAuth authorization-code authentication, dynamic client\nregistration, token revocation, and existing access-token import from the\nMastodon-compatible base. It does not advertise refresh-token support.\n\nSee\n[authentication and sessions](../../docs/authentication-and-sessions.md) for\nthe complete flow and storage requirements.\n\n\nSupported operations\n--------------------\n\nThe adapter maps account lookup and profile updates, followers and following,\npost reads/creation/editing/deletion, home/public/local/list timelines, account\nand post search, media upload/update, polls, notification listing and unread\ncounts, lists, follow requests, relationships, favourites, bookmarks, boosts,\nand Hollo reactions. Hollo quote creation uses `quoted_status_id`.\n\nImportant explicit limits include:\n\n -  post context, quote listing, and edit history are not mapped;\n -  hashtag timelines and hashtag search are not mapped;\n -  media lookup, deletion, and URL ingestion are not mapped;\n -  notification dismissal and clearing are not available;\n -  filters, scheduled posts, and bookmark folders are not mapped;\n -  timeline, notification, and conversation streaming are not available.\n\nRead `client.capabilities` or the capability set returned by instance detection\nbefore selecting optional behavior. Unsupported calls fail with\n`ActivityPlugError` code `UNSUPPORTED_OPERATION`.\n\n\nStreaming and media\n-------------------\n\nHollo does not expose a streaming API through this adapter. Use polling for\ntimeline and notification updates.\n\nMedia upload and metadata updates use the Mastodon-compatible HTTP endpoints.\nMedia deletion and server-side URL ingestion are explicitly unsupported. See\n[streaming and media](../../docs/streaming-and-media.md) for the portable\ncontract.\n\n\nPublic exports\n--------------\n\nThe package exports:\n\n -  `createHolloAdapter` and the pre-created `holloAdapter`;\n -  `HolloAdapterOptions`;\n -  `holloDetectedCapabilities` for the instance-derived capability layer.\n\nUse `@activityplug/core` for the client, sessions, entity types, capability\ntypes, errors, and remote-authority types.\n\n\nRelated documentation\n---------------------\n\n -  [Adapters and capabilities](../../docs/adapters-and-capabilities.md)\n -  [Library usage](../../docs/library-usage.md)\n -  [Errors and troubleshooting](../../docs/errors-and-troubleshooting.md)\n\n\nLicense\n-------\n\nLicensed under Apache-2.0 OR MIT. See `LICENSE-APACHE` and `LICENSE-MIT`.\n","readmeFilename":""}