hotreload-cli
v1.2.6
Published
CLI tool for watching and reacting to file changes
Downloads
5
Readme
hotreload
:zap: CLI tool to conveniently detect and react to file changes
about
In development environments, having the ability to hot-reload your applications once the source code changes is the greatest method of making your life a little easier! Classic projects like nodemon are pretty awesome,
but sometimes the huge amount of features added that aren't really necessary make those tools a bit too overkill for your
use cases, which is why I created hotreload
. Simply supply files you want to watch and actions to be taken once something changes!
getting started
# install using npm
npm i -g hotreload-cli
# install using yarn
yarn global add hotreload-cli
...
# Simply launch hotreload
hotreload [--config <path>]
configuration
hotreload's configuration is mostly based on the libraries found below, so you're getting the full freedom to change anything to your needs.
An example configuration:
{
"watch": [
{
"path": "src/**/*.ts",
"tasks": [
{
"command": "for i in `seq 1 30`; do echo $i && sleep 1; done",
"options": {
"shell": true
}
}
]
}
]
}
reloadOptions
An optional object for configuring hot-reload-specific options such as
shutdownGracePeriod
: The time (in ms) before a SIGKILL signal is issued to the running process, defaults to one secondreloadPeriod
: An optional delay (in ms) between stopping the running processes and spinning up the new ones
options
All options passed are directly used for file-watching. A reference of available options can be found here.
watch
options
: The same as above, but used only for a specific watch targetpath
: A string or array of strings containing files, directories or globs to watchtasks
: An array of tasks to run on each event
tasks
command
: A command as a stringoptions
: An object of process options
thanks to
Since this project is merely a thin wrapper of a few awesome libraries, I'd like to thank the following projects and their respective authors for the great work:
license
This project is licensed under the MIT License