gatsby-plugin-output
v0.1.3
Published
Gatsby plugin to change build output folder
Downloads
4,122
Maintainers
Readme
gatsby-plugin-output
Description
Configure the Gatsby's output folder from ./public
to your target folder.
How to install
npm install --save gatsby-plugin-output
# or
yarn add gatsby-plugin-output
Available options
| No. | Option | required | Default | Description |
| :-- | :------------: | :------: | :------- | :------------------------------------------------------------------------------------- |
| 1 | publicPath | | public
| the output folder of Gatsby, will always be public
in Gatsby@v2 |
| 2 | moveFolder | | false
| move public
folder instead of copy. ・ gatsby develop may not working well after moving public folder. Better keep this flag false. ・ You should clean gatsby cache by gatsby clean
before build if this flag is true
|
| 3 | rmPublicFolder | | false
| remove public
folder before build. ・ Better use gatsby clean
to remove the folder. if necessary. |
When do I use this plugin?
As discussed in ticket #1878, configurable output folder function will not be implemented in Gatsby@v2.
But sometimes changing output dir is necessary like build Gatsby with pathPrefix
and deploy it to Netlify's subdirectory. This plugin is trying to move the compiled files from ./public
to your target folder.
IMPORTANT: In usual case, you'd better put this plugin in the end of
the gatsby-config.js as other plugins like gatsby-plugin-offline is hard-coding public
folder.
Examples of usage
Clean the cache and Define the output dir by environment parameter.
"build": "OUTPUT_DIR=public/blog gatsby build" # in Windows: "build": "cross-env OUTPUT_DIR=public/blog gatsby build"
In
gatsby-config.js
plugins array:`gatsby-plugin-prettier-build`;
And with custom options (See options detail):
{ resolve: `gatsby-plugin-output`, options: { // default values publicPath: 'public', rmPublicFolder: false } }
How to run tests
npm run test
How to develop locally
How to contribute
If you have unanswered questions, would like help with enhancing or debugging the plugin, it is nice to include instructions for people who want to contribute to your plugin.
License
This project is licensed under the terms of the MIT license.