gatsby-plugin-runtime-path-prefix
v2.0.1
Published
Adds support for deploying Gatsby to Swarm/IPFS by ensuring that assets are relative
Downloads
5,139
Maintainers
Readme
gatsby-plugin-runtime-path-prefix
Adds support for deploying Gatsby websites to Swarm and IPFS by ensuring that assets are relative.
This plugin is a modified version of gatsby-plugin-ipfs to add support for deploy on Swarm.
Installation
# Using npm
npm install --save gatsby-plugin-runtime-path-prefix
# Using yarn
yarn add gatsby-plugin-runtime-path-prefix
Usage
Set prefixPath
to an arbitrary string (eg: __PATH_PREFIX__
) and include the plugin in your gatsby-config.js
file.
- Also make sure the option
prefix
is equal to the pathPrefix. - The option
pattern
should match the swarm/ipfs path prefix.
module.exports = {
pathPrefix: '__PATH_PREFIX__',
plugins: [
{
resolve: `gatsby-plugin-runtime-path-prefix`,
options: {
prefix: `__PATH_PREFIX__`,
pattern: /^(\/bzz:\/[^/]+)/ // use /^(\/(?:ipfs|ipns)\/[^/]+)/ for IPFS
},
},
],
};
To build with path prefix use the following command:
gatsby build --prefix-paths
Options
| Option | Example | Description |
| --------------------- | -------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| prefix
| "__PATH_PREFIX__"
| The name of the path prefix set in the gatsby-config.js
file. |
| pattern
| /^(\/bzz:\/[^/]+)/
| The pattern of the Swarm/Ipfs subpath. |
| forceTrailingSlash
| true
| Redirect /<path>
to /<path>/
when trailing slash is missing. (optional) |
| useBasename
| true
| Replace the relative paths (../example
) with the current Swarm/Ipfs path after page load. (/bzz:/hash/example
). (optional) |