rustywatch 0.2.0

Live reloading for any programing languages
Documentation

RustyWatch

GitHub Actions Workflow Status GitHub Actions Workflow Status Crates.io Total Downloads Crates.io License docs.rs Crates.io Size GitHub Repo stars GitHub Tag Crates.io Version Codecov

asciicast

Live reloading inspired by Go Air build with Rust.

Features

  • Universal live reloading support for all programming languages
  • Real-time binary reloading
  • Monorepo development support
  • Run multiple projects with a single command
  • Optimized and efficient build process
  • Automatic detection and monitoring of new directories
  • Enhanced, colorful, and detailed log output

Install

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

cargo install rustywatch

Usage

To start the project just type rustywatch, but first you need to create the config.

  • Config

Create file rustywatch.yaml in your root directory.

# define workspaces, rustywatch can be handled multi project at the same time.
workspaces:
  # first project  
  - dir: './golang-project' # define path directory
    cmd: 'cd ./golang-project;go build main.go' # define command to build binary
    bin_path: './golang-projec/main' # define path for binary location
    bin_arg: # define arguments
     - server
    ignore:
     - '.git'
  # second project
  - dir: './rust-project/src/'
    cmd: 'cd ./rust-project/src/;cargo build'
    bin_path: './rust-project/target/debug/rust-project'
  # more ...

Run the project

rustywatch

Help

rustywatch --help

Support languages

  • NodeJS
  • Go
  • Rust
  • Javascript
  • (more) Need to testing

Star History

Star History Chart

License

MIT & Apache-2.0