{"_id":"@agency-undone/nuxt-module-ipfs","_rev":"4-05201d443d7ec2724059df302568e7b4","name":"@agency-undone/nuxt-module-ipfs","dist-tags":{"latest":"1.0.2-alpha.5"},"versions":{"1.0.2-alpha.3":{"name":"@agency-undone/nuxt-module-ipfs","version":"1.0.2-alpha.3","description":"A Nuxt module that enables nuxt routing for both the intended path and IPFS gateway URLs, which include a CID (hash)","keywords":["Nuxt","NuxtJS","IPFS","Interplanetary File System"],"homepage":"https://github.com/agency-undone/nuxt-module-ipfs#readme","bugs":{"url":"https://github.com/agency-undone/nuxt-module-ipfs/issues"},"license":"Apache-2.0","author":{"name":"Agency Undone","email":"hello@agencyundone.com"},"contributors":[{"name":"Orun Bhuiyan","url":"https://github.com/orvn"}],"main":"index.js","repository":{"type":"git","url":"git+https://github.com/agency-undone/nuxt-module-ipfs.git"},"dependencies":{"klaw":"^3.0.0"},"engines":{"node":">=12.21.0"},"publishConfig":{"access":"public"},"gitHead":"ae2aa3cabe9af63f0bf0d35a611425ae8eaba3a6","_id":"@agency-undone/nuxt-module-ipfs@1.0.2-alpha.3","_nodeVersion":"14.17.6","_npmVersion":"6.14.15","dist":{"integrity":"sha512-nTGVx6V4yh8KymkmnVqFXXvukRnxbR6U8Y3grSl3+Drnp3xP7OHnrUugYQCXlgmpPaLscFjIwGJaqjjmUjP+dg==","shasum":"afa898fb788af2765de6acd14fcf1e9a3f31b4cf","tarball":"https://registry.npmjs.org/@agency-undone/nuxt-module-ipfs/-/nuxt-module-ipfs-1.0.2-alpha.3.tgz","fileCount":4,"unpackedSize":10462,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhldH3CRA9TVsSAnZWagAAKlYQAIxukDikWEsbjI1Yyosb\n3CT8ZX7VmdoNe09zKE80wq86fqyl1Tf1HUpDdCyDAx2yQOGGkagAF5uuU1OE\nCIQe9tAaBpA2nGTYysbD1glTAjuce+/uUm1mOG8GE8z4ykHoKBTR7m85/nDV\naRk1YQFVbJZZ4bhUo3ksGyBm94LURQWG73UoeyK4hWWRdf6TSWuCV/LZndnd\nHqg57hSNanmHOJR0nH2ho3oSg9Q8R5HANAjgV1260ovD7KfKVYmOYUM9y5Sz\nKuhfhlR/yFIwdiY3c1TRwxdgy1eJfgsQ+TEkgELrlStAkhhCcLWk4Vuccloe\nI31ViWHeVsISR6WqfrIfuK7+GrLHne/3y9hTEXGgAY8lMxXOWCcycXZwHQEE\n8m025VYlr+XK3XlJdndEltAX2XjLh/y7A0nRSGwx9tYrahXIP9SYzuATn6rR\nupAWSSqeSNMifyXCLy/g6qk9Q6UbZHGHrLTxRZiMOK6/eS7iSYck6u02B5Ji\ni6aKNZX02mfEgV6UsHz0pwjScX0+4DZyV4PFYfCoN+lJJP1U96dZOFp0swJb\nWWOvCy1zuv46dMLwbIWv7hv1U++g2zRp9mdrYYa1WgjYSgP1ATDy3kLRh2cb\n733gFgIQhYMeFX0UKmVuz0yC62EPngdHBDUPkt9N10SS6vrWWjKx/WLjRJy2\nM/Km\r\n=r6Kp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDRuZzxbOjstOldu59x+zd6pSQFURfcYDFvb7SHM5Rn0gIhAMbpvCqhr1/8LIeYajwZ068eCiO6iwzrpIycUe0jacXt"}]},"_npmUser":{"name":"naurasj","email":"naurasj@gmail.com"},"directories":{},"maintainers":[{"name":"naurasj","email":"naurasj@gmail.com"},{"name":"orvn","email":"orun@agencyundone.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nuxt-module-ipfs_1.0.2-alpha.3_1637208567008_0.9241882864723525"},"_hasShrinkwrap":false},"1.0.2-alpha.4":{"name":"@agency-undone/nuxt-module-ipfs","version":"1.0.2-alpha.4","description":"A Nuxt module that enables nuxt routing for both the intended path and IPFS gateway URLs, which include a CID (hash)","keywords":["Nuxt","NuxtJS","IPFS","Interplanetary File System"],"homepage":"https://github.com/agency-undone/nuxt-module-ipfs#readme","bugs":{"url":"https://github.com/agency-undone/nuxt-module-ipfs/issues"},"license":"Apache-2.0","author":{"name":"Agency Undone","email":"hello@agencyundone.com"},"contributors":[{"name":"Orun Bhuiyan","url":"https://github.com/orvn"}],"main":"index.js","repository":{"type":"git","url":"git+https://github.com/agency-undone/nuxt-module-ipfs.git"},"dependencies":{"klaw":"^4.0.1"},"engines":{"node":">=16.13.0"},"publishConfig":{"access":"public"},"gitHead":"d004b0de4505c2cbcfd52d4d91aada1a04ca4b15","_id":"@agency-undone/nuxt-module-ipfs@1.0.2-alpha.4","_nodeVersion":"14.17.6","_npmVersion":"6.14.15","dist":{"integrity":"sha512-6J4GajcWKj8AutX3nToOvj1sW8pbCi+Y7D0lp6jIkGxm6eaWrHHCUTRF9upGWoBltaBdUN7FKaNv1IiPY83D6Q==","shasum":"82b60159c8e956e8c07ab9f4f3b4ff5cc70083f1","tarball":"https://registry.npmjs.org/@agency-undone/nuxt-module-ipfs/-/nuxt-module-ipfs-1.0.2-alpha.4.tgz","fileCount":4,"unpackedSize":10462,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoRhaCRA9TVsSAnZWagAAGFYP/2dOezZA6QRZLJS6GDXo\nSYe8lypxQbZeFyYM+SHgwTABvqksbU2S9Dy4pquW5Qqneno+l6Gyy+Bp3pZn\nJnc7sK+PNMhBipjMy3ti7B6w/D/evxBiByKQrvpVLr62ppbZvmawAieE43Qf\nqBuJhz2dnaz2d1eUy5vHrAj+gN//hNUla7J/tL4R/yVj3JixGhBMkaTgY7Jw\n857QeGinBHvdiiPYf4WStOUkUXhcnAnRXK8DdPrGi6/5NyAXAidll7M5Y9Pi\nWd9IQS1CE/8mENMblsDEa9cGVh+TLjYOtnWorB1AFJgeKuPPSbbO8gJZl7Ez\ne+MosheumVZc+uXyX6NsSamEXo3Mm22OkeOIZ8WffbjS+qLH2Mp8g8vU4AHA\nbs8TmGiwJUA2nRrEnCfQXKjrW27Qozx0I0MabTG9/tm11NLym37Ruui+ni7H\njYDt/ls9LWLM9PYzJ3Q4JrT+7yLQlcrQFbpRsBEvlWIYtcQwXd4CEbwBql9J\nsEYV9EN1vTbbmjL5T2DhtpymdQ/GQmOt+XMHSFj3f9NhMXpg8aQt6jwLh0eb\nLft0I6QieKqJNezFP7qwAPZENeS6J1q7xuPk+0UMQXzK/5AdVk0EM7wmmOnX\nifvzVnMBzyalI/Fh9FIqbWi3SEN918kuyg8l+yRt9wFsDJUB5nvaTSRqaRHC\nCNFA\r\n=rOuB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH/xQ3n8HUMjZRlrHDRP/vqUC2PX9/TYBKbHw1Cp6GIYAiEA6CzOJX/MI3nIPhL+/U6hvo0USfL9vWP9zwAzpZZNpIk="}]},"_npmUser":{"name":"naurasj","email":"naurasj@gmail.com"},"directories":{},"maintainers":[{"name":"naurasj","email":"naurasj@gmail.com"},{"name":"orvn","email":"orun@agencyundone.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nuxt-module-ipfs_1.0.2-alpha.4_1637947482231_0.9894689328413591"},"_hasShrinkwrap":false},"1.0.2-alpha.5":{"name":"@agency-undone/nuxt-module-ipfs","version":"1.0.2-alpha.5","description":"A Nuxt module that enables nuxt routing for both the intended path and IPFS gateway URLs, which include a CID (hash)","keywords":["Nuxt","NuxtJS","IPFS","Interplanetary File System"],"homepage":"https://github.com/agency-undone/nuxt-module-ipfs#readme","bugs":{"url":"https://github.com/agency-undone/nuxt-module-ipfs/issues"},"license":"Apache-2.0","author":{"name":"Agency Undone","email":"hello@agencyundone.com"},"contributors":[{"name":"Orun Bhuiyan","url":"https://github.com/orvn"}],"main":"index.js","repository":{"type":"git","url":"git+https://github.com/agency-undone/nuxt-module-ipfs.git"},"dependencies":{"klaw":"^4.0.1"},"engines":{"node":">=16.13.0"},"publishConfig":{"access":"public"},"gitHead":"7364bef343602bf1d77a83c0f059b1bb5ffe2f60","_id":"@agency-undone/nuxt-module-ipfs@1.0.2-alpha.5","_nodeVersion":"16.13.0","_npmVersion":"8.1.0","dist":{"integrity":"sha512-aNCuQg/MbG37h3xMgC9GIAol6/x3hXSqojKuRxSQ83A0TO0B5BZXm5DhLMMNlt0haIYjY7649cpQjxYTwoPB3Q==","shasum":"34fdf6803828dadc9809f7c47096bfa2c1c3097c","tarball":"https://registry.npmjs.org/@agency-undone/nuxt-module-ipfs/-/nuxt-module-ipfs-1.0.2-alpha.5.tgz","fileCount":4,"unpackedSize":10462,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoTKSCRA9TVsSAnZWagAAf1EP/ih3JENC6a6Xbn9WmJ9r\nhS7/1qnv8r5IAgEgNfAi+XGs2wotlZS/SOZL0iFL0tHpzuRsWVUPFpggm3st\n/FkqLIpGbe53MAqQtFno+tf2LOeibUKlPzuwNb5Eusp71vIpPjiHxH1O/24z\nV4QPbo1OvmXRrL/aPyHwXD7Hkgf62yuHlpAR5cWj09o/dEMd/QJjfMFvaZWu\nKrrtH66W5z413itCbw1n24Upg6+6KFSzAzc/XwkrUnZCapSQowJ91j1JGs+2\nQR71CBs/uRcd5wEik25F9ycvIdtKpKR2wdwfC74cHf4w6a8wcWMtJ/i6sWji\n0QwO0fnFTfpvD/yrAjeyZVAoh46AlE3nWRnJ4woSXp3TGnduUcJjY7vncwZs\nv6G5m0k5bswBzVMI8Gj4dDsYnU/7d95NDmlmFgulOisZUVLbyoWEGpYUJcz1\nCGl6gYj1NO9/xOOyGzh8wmZdBBtPY2FGxq9+q++BLz/7bAR6ij4+W0ZsTirc\nhmbIE/21XlRWIZKEMFWZ8SSRFA3Vue9UJtr+te1a13wwX2CLLgoZquz9yhSA\ny0UVRubzmNFUtDHFqXK4aMB64xqC6NVnNW+b976c71IIxIH0agSgzNdhk+FK\nKWngyDVLmmmOlNjeYbkuKfa23sxVvFrfNMnk7Xk0Y7wpFuFqvyPX75uxcyBm\n5mfO\r\n=6n77\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDPQrpscyjc47slm3sprFejEbZRTK/vyKMHztacgBXKnQIgNeihtOzllBT7jCk0RHHg/L5ndSdm2kdeCgfrryIvoNs="}]},"_npmUser":{"name":"naurasj","email":"naurasj@gmail.com"},"directories":{},"maintainers":[{"name":"naurasj","email":"naurasj@gmail.com"},{"name":"orvn","email":"orun@agencyundone.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nuxt-module-ipfs_1.0.2-alpha.5_1637954194585_0.14636244167367551"},"_hasShrinkwrap":false}},"time":{"created":"2021-11-18T04:09:26.933Z","1.0.2-alpha.3":"2021-11-18T04:09:27.176Z","modified":"2022-04-04T11:55:22.669Z","1.0.2-alpha.4":"2021-11-26T17:24:42.367Z","1.0.2-alpha.5":"2021-11-26T19:16:34.912Z"},"maintainers":[{"email":"ben@agencyundone.com","name":"benmunoz"},{"email":"naurasj@gmail.com","name":"naurasj"},{"email":"orun@agencyundone.com","name":"orvn"}],"description":"A Nuxt module that enables nuxt routing for both the intended path and IPFS gateway URLs, which include a CID (hash)","homepage":"https://github.com/agency-undone/nuxt-module-ipfs#readme","keywords":["Nuxt","NuxtJS","IPFS","Interplanetary File System"],"repository":{"type":"git","url":"git+https://github.com/agency-undone/nuxt-module-ipfs.git"},"contributors":[{"name":"Orun Bhuiyan","url":"https://github.com/orvn"}],"author":{"name":"Agency Undone","email":"hello@agencyundone.com"},"bugs":{"url":"https://github.com/agency-undone/nuxt-module-ipfs/issues"},"license":"Apache-2.0","readme":"# Nuxt Module for IPFS Gateway Routing\n\n## Overview\n\nA Nuxt module that enables nuxt routing for both the intended path and IPFS gateway URLs, which include a CID (hash) of the asset.\n\nEnabling this plugin for Nuxt in **static mode** will allow resources, including pages, to be accessible via 3 different route structures:\n\n- `foo.com/`\n- `gateway.ipfs.io/ipfs/Qma....AbFd/`\n- `ipfs.io/ipns/foo.com/`\n\nSubsequently, resources and other pages automatically use paths relative to those bases:\n- `foo.com/bar.png`\n- `gateway.ipfs.io/ipfs/Qma....AbFd/bar.png`\n- `ipfs.io/ipns/foo.com/bar.png`\n\nor\n- `foo.com/style.css`\n- `gateway.ipfs.io/ipfs/Qma....AbFd/style.css`\n- `ipfs.io/ipns/foo.com/style.css`\n\n## Installation\n\n_`npm` package coming soon. Manual installation required for now._\n\n1. Download this repo, extract it and put the resulting folder into your `modules` directory in your Nuxt project\n2. Add `target: 'static'` and `router.base` to your `nuxt.config.js`\n3. Add the module folder name to the `modules` array in `nuxt.config.js`\n\n**nuxt.config.js**\n```js\nexport default {\n  target: 'static',\n  modules: [\n    '~/modules/nuxt-module-ipfs'\n  ],\n  router: {\n    base: process.env.NODE_ENV === 'development' ? '/' : '/ipfs/hash/'\n  }\n}\n```\n\n## Usage\n\n_Support for the `assets` directory potentially coming in the future_\n\nAll image assets must be placed in the `static` directory, _not_ the `assets` directory and must be wrapped using the included `$relativity()` (including a starting forward slash) global method as outlined below:\n\n**component.vue**\n```vue\n<template>\n  <img :src=\"$relativity('/images/duck.jpg')\" />\n</template>\n```\n\n## Additional Cases\n_To be added_\n\n#### Canonicalization and SEO\nAdditionally, it may be useful in the future to add a canonicalization option, to semantically declare one page as a duplicate of the other, and direct third party entities like bots to the correct resource. This would be accomplished by injecting a tag into `<head>` of the version that is considered secondary, which would look like\n\n```html\n<link rel=\"canonical\" href=\"foo.com/bar\" />\n```\n\nSince IPFS gateway URLs were an older (and by some standards _legacy_) implementation, this tag would typically be added to the IPFS Gateway URLs only.\n\n## Roadmap\n- [ ] Add checker for `target: static`\n- [ ] Construct and inject `rel=\"canonical\"` tag\n- [ ] Make the favicon path relative and working on all URL structures\n- [ ] Make `200.html` path relative\n","readmeFilename":"README.md"}