TranslateCI makes human translations for your Laravel app as easy as using Git. Just push your code, and TranslateCI will take care of the rest. It scans for untranslated phrases, and uses professional human translators to support over 70 possible language pairs. When the translations are done, usually in less than 24 hours, TranslateCI makes a PR back to your repository. Check it out today!

A package to watch for file system changes in PHP

Original – by Freek Van der Herten – 2 minute read

Our team has released a new package called file-system-watcher. As the name implies, this package can watch changes in the file system and let you act on those changes.

Using the package

Here's a simple example that allows you to run some code when a new file gets added.

use Spatie\Watcher\Watch;

    ->onFileCreated(function (string $newFilePath) {
        // do something...

After calling start, the watcher will start a never-ending loop. When a file is created in the given $directory, the closure passed in onFileCreated will be executed.

There are methods for each kind of file change onFileCreated(), onFileUpdated(), onFileDeleted(), onDirectoryCreated(), onDirectoryDeleted().

Pretty simple, right?

How it works under the hood

Under the hood, this package leverages (, a popular JS library that can efficiently handle file system changes without requiring much memory or CPU.

To see a demo of the package and learn how we integrated our PHP code with a JS package, watch this fragment of a stream in which I introduced our file-system-watcher.

In closing

There are a few more options available in file-system-watcher. Head over to the readme on GitHub to learn more.

Be sure also to check out the packages our team has created previously. I'm sure there is something that you could use in your next project.

Stay up to date with all things Laravel, PHP, and JavaScript.

Follow me on Twitter. I regularly tweet out programming tips, and what I myself have learned in ongoing projects.

Every two weeks I send out a newsletter containing lots of interesting stuff for the modern PHP developer.

Expect quick tips & tricks, interesting tutorials, opinions and packages. Because I work with Laravel every day there is an emphasis on that framework.

Rest assured that I will only use your email address to send you the newsletter and will not use it for any other purposes.