{"repo":"e-dant/watcher","free":true,"listed":false,"github":"https://github.com/e-dant/watcher","clone":"git clone https://github.com/e-dant/watcher.git","description":"Filesystem watcher. Works anywhere. Simple, efficient and friendly.","language":"C++","stars":807,"topics":["cpp","efficient","fast","filesystem","friendly","header-only","simple","watcher","single-header","safe"],"license":"MIT","category":"dev-tools","readme_excerpt":"Watcher Quick Start C++ C Python Rust Node.js Go The output of each above will be something like this, depending on the example: Enjoy! --- Tell Me More A filesystem event watcher which is 1. Friendly I try to keep the 1579 lines that make up the runtime of Watcher relatively simple and the API practical: 2. Modular Watcher may be used as a library, a program, or both . If you aren't looking to create something with the library, no worries. Just use ours and you've got yourself a filesystem watcher which prints filesystem events as JSON. Neat. Here's how: 3. Efficient You can watch an entire filesystem with this project. In almost all cases, we use a near-zero amount of resources and make efficient use of the cache. We regularly test that the overhead of detecting and sending an event to the user is an order of magnitude less than the filesystem operations being measured. 4. Well Tested We run this project through unit tests against all available sanitiziers. This code tries hard to be thread, memory, bounds, type and resource-safe. What we lack from the language, we try to make up for with testing. For some practical definition of safety, this project probably fits. 5. Dependency Minimal Watcher depends on the C++ Standard Library. For efficiency, we leverage the OS when possible on Linux, Darwin and Windows. For testing and debugging, we use Snitch and Sanitizers. 6. Portable Watcher is runnable almost anywhere. The only requirement is a filesystem. --- Usage Project Conten","default_branch":null,"files":null,"tree":[],"storefront":"/r/e-dant","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/e-dant/watcher/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}