lumin 0.1.3

A library for searching and displaying local files
Documentation
# lumin: A File Searcher

A Rust utility for searching, traversing, and viewing files with rich filtering options and type-aware content handling.

## Features

- **Search**: Find text patterns in files using regex
- **Traverse**: List files in directories with advanced filtering
- **View**: Display file contents with type detection (text, binary, image)

## Installation

```
cargo install --path .
```

## Usage

### Search for text patterns

```
lumin search <PATTERN> <DIRECTORY> [OPTIONS]
```

Options:

- `--case-sensitive`: Enable case-sensitive matching
- `--ignore-gitignore`: Ignore .gitignore rules

### Traverse directories

```
lumin traverse <DIRECTORY> [OPTIONS]
```

Options:

- `--case-sensitive`: Enable case-sensitive filtering
- `--ignore-gitignore`: Ignore .gitignore rules
- `--all-files`: Include binary files (default: text files only)

### View file contents

```
lumin view <FILE_PATH> [OPTIONS]
```

The view command outputs a structured JSON with:

- File path
- File type
- Contents (text, binary, or image with appropriate metadata)

## Key Features

- Gitignore-aware operations
- Type detection using extension and content analysis
- Strongly typed output structures
- Comprehensive error handling

## Development

```
# Build
cargo build

# Test
cargo test

# Format code
cargo fmt

# Run linter
cargo clippy
```

## License

MIT

## Contributing

See [CONTRIBUTING.md](./tests/test_dir_1/docs/CONTRIBUTING.md) for guidelines.