SkillAgentSearch skills...

Beholder

The Clojure directory watcher from Krell as a standalone library.

Install / Use

/learn @nextjournal/Beholder
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Beholder

Clojars Project

The Clojure directory watcher from krell as a standalone library.

Beholder Logo

Built using the Java library directory-watcher. From its README:

A directory watcher utility for JDK 8+ that aims to provide accurate and efficient recursive watching for Linux, macOS and Windows. In particular, this library provides a JNA-based WatchService for Mac OS X to replace the default polling-based JDK implementation.

The core directory-watcher library is designed to have minimal dependencies; currently it only depends on slf4j-api (for internal logging, which can be disabled by passing a NOPLogger in the builder) and jna (for the macOS watcher implementation).

Initial development by David Nolen.

Usage

Pass a callback function and paths to watch.

(require '[nextjournal.beholder :as beholder])
(def watcher
  (beholder/watch prn "src"))

(beholder/stop watcher)

Whenever a file changes, your callback function will be invoked with a map with :type and :path keys. Possible values for :type are :create, :modify, :delete or :overflow.

License

Copyright © 2021 Nextjournal

Distributed under the EPL-1.0 License.

Related Skills

View on GitHub
GitHub Stars126
CategoryDevelopment
Updated1mo ago
Forks7

Languages

Clojure

Security Score

100/100

Audited on Feb 26, 2026

No findings