Reseed is an open-source tool for integrating static sites into subpaths.
Install with npm globally: npm install -g reseed or as a dev dependency: npm install -D reseed.
Then run using the following structure:
$ reseed [command] [options]
For example: reseed -s path/to/src -d path/to/dest -b baseurl
Once installed you can also set up your package.json with a custom script, such as:
{
"scripts": {
"reseed": "reseed -s path/to/src -d path/to/dest -b baseurl"
}
}Then use npm run reseed within your project.
Alternatively, you can use npx to avoid installing reseed as a dependency.
For example: npx reseed -s path/to/src -d path/to/dest -b baseurl
All commands (except clean) require both baseurl and dest options set.
The clean command only requires the dest option set.
See Options for more info.
Cleans destination directory, and copies files from src to dest/baseurl. CSS and HTML files have their hrefs/urls/etc (excluding external links) rewritten so that baseurl is prepended.
$ reseed -s path/to/src -d path/to/dest -b baseurl
Deletes all files in the destination directory.
$ reseed clean -d path/to/dest
Copy all files (excluding CSS and HTML) from source to destination/baseurl without altering the data.
$ reseed clone-assets -b baseurl -d path/to/dest
Copies css files from src to dest/baseurl. Then rewrites the newly copied files so that urls/hrefs/etc that reference local content have baseurl prepended to them.
$ reseed rewrite-css -b baseurl -d path/to/dest
Copies html files from src to dest/baseurl. Rewrites the newly copied files so that internal urls/hrefs/etc have baseurl prepended to them.
$ reseed rewrite-html -b baseurl -d path/to/dest
Copies the sitemap from src to dest/baseurl. Rewrites the copied file so that links have baseurl prepended to them. If the provided file is a sitemap index, the referenced sitemaps will be processed similarly.
The sitemap (or sitemap index) file can be specified using the -m | --sitemap option. If no sitemap file is specified, will default to sitemap.xml.
$ reseed rewrite-sitemap -b baseurl -d path/to/dest -m sitemapindex.xml
Copies the specified RSS file(s) from src to dest/baseurl. Rewrites the copied file(s) so that links have baseurl prepended to them.
The RSS file must be specified using the -r | --rss option. This option is a glob. The specified file(s) must have the .xml extension.
If using a glob with wildcards (
*) you must wrap the glob in quotes. See the example below.
$ reseed rewrite-rss -b baseurl -d path/to/dest -r "**/index.xml"
Runs reseed, then serves the files on a local webserver, so that they may be viewed in a browser. Then runs watch.
$ reseed serve -s path/to/src -d path/to/dest -b baseurl
Continuously watches the src directory to check for changes. If a change occurs, a new build is triggered, and the browser is then reloaded.
$ reseed watch -s path/to/src -d path/to/dest -b baseurl
Prevents reseed from adding the baseurl infront of an elements path
<a href="/manual" reseed-ignore>Click me!</a>
| Option | Alias | Type | Description |
|---|---|---|---|
--source |
-s |
String | The source folder to clone. Defaults to current working directory. |
--dest |
-d |
String | The destination folder to clone the files to. |
--baseurl |
-b |
String | The filename to prepend to the files in the source. |
--port |
-p |
Integer | The port number to serve the cloned site on. |
--extrasrc |
-e |
String | Extra src attribute to be rewritten. Can set multiple attributes by specifying the flag multiple times. |
--sitemap |
-m |
String | Path to the index sitemap. Defaults to sitemap.xml. |
--rss |
-r |
String | Glob to rss file or files. |
--overwrite |
-o |
Boolean | When cleaning --dest, don't prompt for confirmation. |
--split |
Integer | The number of partitions to divide files into. | |
--partition |
Integer | The partition number to process. | |
--help |
Boolean | Show help in the terminal |