Skip to content

beyondjs/finder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

@beyond-js/finder

A powerful and flexible file finder utility for Node.js applications.

Installation

npm install @beyond-js/finder

Usage

const { Finder, ConfigurableFinder, FinderCollection } = require('@beyond-js/finder');

// Basic usage with Finder
const finder = new Finder('/path/to/search', {
	includes: ['*.js', 'src/**/*.ts'],
	excludes: ['node_modules', 'dist'],
	filename: 'config',
	extname: ['.json', '.yaml']
});

finder.on('file.change', file => {
	console.log('File changed:', file);
});

// Using ConfigurableFinder
const configurableFinder = new ConfigurableFinder(watcherInstance);
configurableFinder.configure('/path/to/search', {
	includes: ['**/*.js'],
	excludes: ['node_modules']
});

// Using FinderCollection
class MyCollection extends FinderCollection {
	constructor(watcher) {
		super(watcher, MyItemClass);
	}
}

const collection = new MyCollection(watcherInstance);
collection.configure('/path/to/search', {
	includes: ['**/*.config.js']
});

collection.ready.then(() => {
	for (const [key, item] of collection) {
		console.log(key, item);
	}
});

API

Finder

  • constructor(path: string, specs: object)
  • on(event: string, callback: function): Listen for file changes

ConfigurableFinder

  • constructor(watcher: object)
  • configure(path: string, specs: object): Set up the finder configuration

FinderCollection

  • constructor(watcher: object, Item: class)
  • configure(path: string, specs: object): Set up the collection configuration
  • ready: Promise that resolves when the collection is ready

Features

  • Flexible file searching with include/exclude patterns
  • File watching capabilities
  • Configurable finder for dynamic search configurations
  • Collection support for managing groups of found items
  • Asynchronous processing with Promise support

License

MIT © [BeyondJS]

About

A versatile file finder and watcher utility for Node.js applications. This package provides powerful tools for searching, filtering, and monitoring files and directories, including support for configurable finders and collections. Ideal for projects requiring advanced file management and real-time file system monitoring capabilities.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors