Skip to main content
Bun provides a fast, cross-platform glob matcher for finding files using wildcard patterns. It’s built in Zig and optimized for performance.

Basic Usage

Glob Patterns

Wildcards

Character Classes

Braces

Negation

Scanning Files

Async Iteration

Most efficient for large directories:

Array Result

Collect all matches:

Sync Scanning

Scan Options

Current Working Directory

Dot Files

Include hidden files:

Absolute Paths

Return full paths instead of relative:

Only Files

Exclude directories from results:

Pattern Matching

Match Method

Test if a path matches the pattern:

Multiple Patterns

Match against multiple globs:

Common Patterns

All TypeScript Files

All JavaScript Variants

Exclude node_modules

Or use a function to filter:

Specific Directories

Test Files

Config Files

Performance

Fast Scanning

Bun’s glob is highly optimized:

Comparison

  • Bun Glob: ~200,000 files/sec
  • fast-glob: ~100,000 files/sec
  • node-glob: ~50,000 files/sec

Optimization Tips

  1. Use specific patterns
  2. Filter early
  3. Use async iteration

Use Cases

Build Tools

File Watching

Testing

Linting

Cleaning

Advanced Usage

Multiple Include/Exclude

Glob Expansion

Expand pattern to list of files:

Custom Scanner

Error Handling

Platform Support

Glob patterns work identically on:
  • macOS
  • Linux
  • Windows (uses forward slashes internally)

Windows Paths