{"_id":"@akashic-extension/instance-storage","name":"@akashic-extension/instance-storage","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@akashic-extension/instance-storage","version":"1.0.0","description":"An extension library providing multi-platform storage for Akashic Engine","main":"lib/index.js","author":{"name":"DWANGO Co., Ltd."},"license":"MIT","publishConfig":{"@akashic-extension:registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+https://github.com/akashic-games/instance-storage.git"},"scripts":{"prepare":"npm run build","build":"rimraf ./lib && npm run format && tsc","doc":"typedoc --out ./public/api src/index.ts","format":"run-s format:*","format:prettier":"prettier --write .","format:eslint":"eslint \"src/**/*.ts\" --fix","test":"run-s test:*","test:vitest":"vitest run --coverage","test:prettier":"prettier -c .","test:eslint":"eslint \"src/**/*.ts\"","test:remark":"remark ./*.md --frail --no-stdout --quiet"},"devDependencies":{"@akashic/akashic-engine":"^3.20.2","@akashic/eslint-config":"^3.0.1","@akashic/remark-preset-lint":"^0.1.2","@vitest/coverage-v8":"^3.0.9","eslint-config-prettier":"^10.1.1","npm-run-all":"^4.1.5","prettier":"^3.5.3","remark-cli":"^12.0.1","rimraf":"^6.0.1","typedoc":"^0.28.0","typescript":"^5.8.2","vitest":"^3.0.9"},"gitHead":"e0442b579b23fc980878ca6ce0b39128265d4ef3","types":"./lib/index.d.ts","_id":"@akashic-extension/instance-storage@1.0.0","bugs":{"url":"https://github.com/akashic-games/instance-storage/issues"},"homepage":"https://github.com/akashic-games/instance-storage#readme","_nodeVersion":"24.11.1","_npmVersion":"11.6.2","dist":{"integrity":"sha512-sSCWet3IFOPKuFernYNtQchqv1UHyhuGazFH0Q5shaKGkB0Idu2cL/dSYZ2q5yeNn+L9GX/1UV9vvjUhc8pNJA==","shasum":"d6d133025788c1a6176db58883d120181bd4f4c7","tarball":"https://registry.npmjs.org/@akashic-extension/instance-storage/-/instance-storage-1.0.0.tgz","fileCount":24,"unpackedSize":20550,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCDhW1B5C40bEuz7Qhi4JvX76ajNW59SC9eAXpWUxLK3QIgWBykZOwy90Nx8IGsma6Bt+FLt2Y2hi68JzKa1nPmyiQ="}]},"_npmUser":{"name":"akashic-extension-owner","email":"akashic@dwango.co.jp"},"directories":{},"maintainers":[{"name":"akashic-extension-owner","email":"akashic@dwango.co.jp"},{"name":"akashic-owner","email":"akashic@dwango.co.jp"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/instance-storage_1.0.0_1764926043200_0.7876918225174852"},"_hasShrinkwrap":false}},"time":{"created":"2025-12-05T09:14:03.134Z","1.0.0":"2025-12-05T09:14:03.345Z","modified":"2025-12-05T09:14:03.611Z"},"maintainers":[{"name":"akashic-extension-owner","email":"akashic@dwango.co.jp"},{"name":"akashic-owner","email":"akashic@dwango.co.jp"}],"description":"An extension library providing multi-platform storage for Akashic Engine","homepage":"https://github.com/akashic-games/instance-storage#readme","repository":{"type":"git","url":"git+https://github.com/akashic-games/instance-storage.git"},"author":{"name":"DWANGO Co., Ltd."},"bugs":{"url":"https://github.com/akashic-games/instance-storage/issues"},"license":"MIT","readme":"<p align=\"center\">\n<img src=\"https://raw.githubusercontent.com/akashic-games/instance-storage/main/img/akashic.png\"/>\n</p>\n\n# instance-storage\n\nニコニコ生放送 (ニコ生ゲーム) においてローカルストレージを利用するための Akashic Engine 向けライブラリです。\n\n利用には Akashic Engine v3 以降が必要です。\n\n## インストール\n\n`akashic install` コマンドでインストールしてください。\n\n```sh\nakashic install @akashic-extension/instance-storage\n```\n\nインストール後にテキストエディタで game.json を開いて、次のような `environment.external.instanceStorageLimited` プロパティがなければ作成してください。\n値は `\"0\"` としてください。(v2.1.2 以降の `akashic-cli` では、 `akashic install` 時に自動的に作成されます。)\n\n```js\n{\n  ...,\n  \"environment\": {\n    \"external\": {\n      \"instanceStorageLimited\": \"0\"\n    }\n  }\n}\n```\n\n## 利用方法\n\nスクリプトアセット内で、 `require()` により値 `instanceStorage` を取得します。\n\n```js\nconst { instanceStorage } = require(\"@akashic-extension/instance-storage\");\n```\n\nTypeScript の場合は `import` を利用してください。\n\n```ts\nimport { instanceStorage } from \"@akashic-extension/instance-storage\";\n```\n\n```js\nconst { instanceStorage } = require(\"@akashic-extension/instance-storage\");\n\n...\n\n(async () => {\n  const value = await instanceStorage.read(\"key1\");\n  console.log(`value: ${value}`);\n})();\n```\n\n`Promise` の代わりにコールバック関数を渡すことができる `instanceStorageRaw` も利用できます。\n(通常利用する必要はありません)\n\n```js\nconst { instanceStorageRaw } = require(\"@akashic-extension/instance-storage\");\n\ninstanceStorageRaw.read(\"key1\", (error, value) => {\n  if (error) {\n    console.log(error);\n    return;\n  }\n  console.log(`value: ${value}`);\n});\n```\n\n## 仕様\n\n詳細な仕様は [APIリファレンス](https://akashic-games.github.io/instance-storage/api/index.html) を参照してください。\n\n## 開発\n\n### ビルド方法\n\nTypeScript で書かれています。ビルドには Node.js が必要です。以下のコマンドでビルドしてください。\n\n```sh\nnpm install\nnpm run build\n```\n\n## ライセンス\n\n本リポジトリは MIT License の元で公開されています。\n詳しくは [LICENSE](https://github.com/akashic-games/instance-storage/blob/main/LICENSE) をご覧ください。\n\nただし、画像ファイルおよび音声ファイルは\n[CC BY 2.1 JP](https://creativecommons.org/licenses/by/2.1/jp/) の元で公開されています。\n","readmeFilename":"README.md","_rev":"1-b92b2c7e8aa32c963ae3c92f5a31347a"}