A file watcher system written in Rust.

Related tags

Command-line fws-rs
Overview

fws-rs

fws-rs is an application written in rust that acts as a configurable file watcher, capable of detecting real-time changes and running custom commands. Configuration can be done via a JSON file or as arguments during runtime.

Features

  • Watch for file system changes (create, modify, delete)
  • Execute custom commands
  • Configuration via JSON file or command line arguments
  • Recursive directory watching
  • Observe custom files with patterns extensions

🚀 Getting started

📥 Installation

Clone the repo or download the most recently release from github.

git clone https://github.com/ChirujanoCodding/fws-rs.git

👷‍♂️ Building the project

In the folder fws-rs run:

cargo build --release

📚 Usage & Examples

Once you have the program builded or downloaded from the most recently release, insert the fws-rs.exe or fws-rs (depends your OS) in your project.

  1. Using a configuration file:
fws-rs --config "config.json"

(You must need to create a config.json file like this)

{
    "watch": "your/path", // the path you want to observe.
    "exec": "python main.py", // the command you want to be execute when apply changes on files.
    "recursive": true | false // if you want to look specific path or recursive (default False).
    "on_events_only": true, // if you want to execute commands only if ocurrs an event (default False).
    "patterns": ['.rs', '.py', '.js'] // your .extensions (default is []).
}
  1. Using configuration arguments:
fws-rs --watch "your/path" --exec "your script"

📷 Screenshots

Executing with different configs

image

image

Different logs:

image

💼 License

This project is under the MIT License.

You might also like...
A CLI tool for CIs and build scripts, making file system based caching easy and correct (locking, eviction, etc.)

FS Dir Cache A CLI tool for CIs and build scripts, making file system based caching easy and correct (locking, eviction, etc.) When working on build s

First project in rust which will be to make an accounts system & Leaderboard/Score system

rust-backend this is my first project in rust which will be to make a backend for compsci project it will include: Accounts, Player Achievements (if I

 joshuto: ranger-like terminal file manager written in Rust.
joshuto: ranger-like terminal file manager written in Rust.

joshuto: ranger-like terminal file manager written in Rust.

⚡️ Blazing fast terminal file manager written in Rust, based on async I/O.

Yazi - ⚡️ Blazing Fast Terminal File Manager Yazi ("duck" in Chinese) is a terminal file manager written in Rust, based on non-blocking async I/O. It

Simple terminal file manager(vi-style keybindings) written in rust

rust-tfm rust-tfm is a terminal file manager written in rust heavily inspired by lf and ranger, and also inspired by suckless software. rust-tfm.mp4 F

A simple CLI tool to create python project file structure, written in Rust
A simple CLI tool to create python project file structure, written in Rust

Ezpie Create python projects blazingly fast What Ezpie can do? It can create a python project directory What kind of directory can Ezpie create? For c

 skyfetch ☁️  a system information fetch written in rust
skyfetch ☁️ a system information fetch written in rust

skyfetch ☁️ a system information fetch written in rust requirements cargo install with curl

An experimental real-time operating system (RTOS) written in Rust

An experimental real-time operating system (RTOS) written in Rust

An online judge system written in Rust.
An online judge system written in Rust.

MROJ - Making a Rust Oneline Judge Background This repo was initially a homework of Tsinghua University Programing and Training Course, but I found it

Releases(1.1.1-pre)
Owner
ChirujanoCodding
i didn't push to prod.
ChirujanoCodding
Single File Assets is a file storage format for images

SFA (Rust) Single File Assets is a file storage format for images. The packed images are not guaranteed to be of same format because the format while

null 1 Jan 23, 2022
A command-line tool aiming to upload the local image used in your markdown file to the GitHub repo and replace the local file path with the returned URL.

Pup A command line tool aiming to upload the local image used in your markdown file to the GitHub repo and replace the local file path with the return

SteveLau 11 Aug 17, 2022
A tool for determining file types, an alternative to file

file-rs a tool for determining file types, an alternative to file whats done determining file extension determining file type determining file's mime

null 3 Nov 27, 2022
SAORI for UKAGAKA. Convert a image file to resized png file.

Resized Png GitHub repository これは何? デスクトップマスコット、「伺か」で使用できるSAORIの一種です。 機能としては、指定した画像ファイルを拡大または縮小し、pngとして出力します。 「伺か」「SAORI」等の用語については詳しく説明いたしませんのでご了承下さい。

月波 清火 2 Jan 3, 2023
FileSorterX is an automatic file sorting application that sorts your files into folders based on their file extension

FileSorterX is an automatic file sorting application that sorts your files into folders based on their file extension. With FileSorterX, you can easily keep your files organized and find what you need quickly.

Xanthus 22 Apr 4, 2023
My own image file format created for fun! Install the "hif_opener.exe" to open hif files. clone the repo and compile to make your own hif file

Why am i creating this? I wanted to create my own image format since I was 12 years old using Windows 7, tryna modify GTA San Andreas. That day, when

hiftie 3 Dec 17, 2023
Modern file system navigation tool on Unix

monat -- Modern file system Navigator 简体中文 Introduction monat is a Unix shell auxiliary command focusing on the navigation of the file system, especia

Pavinberg 8 May 10, 2022
A tool for BFS (Bugbear File System) archives

bfstool bfstool is a tool for BFS (Bugbear File System) archive creation, extraction and more. BFS archives are present in most games developed by Bug

Katie 6 Dec 18, 2022
An easy file system based on eazy-fs of rcore.

fs-rs An easy mixed index file system based on eazy-fs of rcore. Usage if you don't have rust environment, you can download rust by: curl https://sh.r

Clstilmldy 9 Dec 21, 2022
An efficient pictures manager based on custom tags and file system organization.

PicturesManager An efficient pictures manager based on custom tags and file system organization. Developed with Tauri (web app) with a Rust backend an

Clément Grennerat 2 Dec 21, 2022