agatan / watchbird

file monitoring library with Crystal

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

WatchBird

WatchBird monitors directories and files, runs tasks automatically.

This library is strongly inspired by guard and crake. Thanks ;)

notice: WatchBird is under development and has few features yet.

Features

WatchBird is just a library (inspired by crake). You can use this library in your application. it also provides DSL module. You can use this library with DSL syntax like guard.

Installation

Add this to your application's shard.yml:

dependencies:
  watchbird:
    github: agatan/watchbird

Usage

See this code:

require "watchbird/dsl"

watch "./**/*.cr" do |ev|
  # ev.status is WatchBird::EventType.
  # can be Modify, Create and Delete.
  puts ev.status
  # ev.name is changed target's fullpath. It is an absolute path.
  puts ev.name
  # ev.dir? returns true when changed target is a directory
  puts ev.dir?
end

and execute crystal watchbird.cr.

This repository contains sample watchbird.cr file to run spec automatically.

Contributing

  1. Fork it ( https://github.com/agatan/watchbird/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors

  • agatan Naomichi Agata - creator, maintainer

About

file monitoring library with Crystal

License:MIT License


Languages

Language:Crystal 100.0%