The fastest directory crawler & globbing alternative to glob, fast-glob, & tiny-glob. Crawls 1m files in < 1s
npm install fdir
⚡ The Fastest: Nothing similar (in the NodeJS world) beats fdir in speed. It can easily crawl a directory containing 1 million files in < 1 second.
💡 Stupidly Easy: fdir uses expressive Builder pattern to build the crawler increasing code readability.
🤖 Zero Dependencies\*: fdir only uses NodeJS fs & path modules.
🕺 Astonishingly Small: < 2KB in size gzipped & minified.
🖮 Hackable: Extending fdir is extremely simple now that the new Builder API is here. Feel free to experiment around.
_\* picomatch must be installed manually by the user to support globbing._
You can install using npm:
``sh`
$ npm i fdir
or Yarn:
`sh`
$ yarn add fdir
`ts
import { fdir } from "fdir";
// create the builder
const api = new fdir().withFullPaths().crawl("path/to/dir");
// get all files in a directory synchronously
const files = api.sync();
// or asynchronously
api.withPromise().then((files) => {
// do something with the result here.
});
`
Documentation for all methods is available here.
Please check the benchmark against the latest version here.
fdir is downloaded over 200k+ times a week by projects around the world. Here's a list of some notable projects using fdir` in production:
> Note: if you think your project should be here, feel free to open an issue. Notable is anything with a considerable amount of GitHub stars.
1. rollup/plugins
2. SuperchupuDev/tinyglobby
3. pulumi/pulumi
4. dotenvx/dotenvx
5. mdn/yari
6. streetwriters/notesnook
7. imba/imba
8. moroshko/react-scanner
9. netlify/build
10. yassinedoghri/astro-i18next
11. selfrefactor/rambda
12. whyboris/Video-Hub-App
Copyright © 2024 Abdullah Atta under MIT. Read full text here.