Metadata-Version: 2.4
Name: search-and-destroy
Version: 2026.1.1
Summary: A CLI tool to clean up build files from all types of tech stacks. It’s like a Roomba for your project directory, but instead of dust, it sucks up those pesky `dist/`, `build/`, and `*.egg-info/` folders.
Home-page: https://github.com/Bro-Code-Technologies/search-and-destroy
Author: Bro Code Technologies LLC
Author-email: info@brocodetechnologies.com
License: MIT
Project-URL: Source, https://github.com/Bro-Code-Technologies/search-and-destroy
Project-URL: Issues, https://github.com/Bro-Code-Technologies/search-and-destroy/issues
Project-URL: Documentation, https://github.com/Bro-Code-Technologies/search-and-destroy?tab=readme-ov-file#search-and-destroy
Project-URL: Package, https://pypi.org/project/search-and-destroy
Keywords: cli,terminal,tools,clean
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: End Users/Desktop
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Utilities
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: send2trash
Requires-Dist: pathspec
Dynamic: license-file

# search-and-destroy

Build files be gone! search-and-destroy is a CLI tool to clean up build files from all types of tech stacks. It’s like a Roomba for your project directory, but instead of dust, it sucks up those pesky `node_modules/`, `build/`, and `*.egg-info/` folders.

## Requirements
- Python 3.8+

> **Caution:** It's strongly recommended to run `sad` with `--dry-run` first and add a `.sadignore` file to protect any files or folders you don't want removed.

## Quick start
```powershell
# Run search-and-destroy to remove build files
sad

# Examples
sad list
sad list node
sad --dry-run nuke node
sad --all --yes node
sad --dry-run python
sad --dry-run dotnet
```

## Commands
- `list [type]` — Show project and build artifact names that would be removed for `type` (default: all).
- `nuke [type1 type2 ...]` — Recursively find and remove matching targets for the named project types (default: all). Use `--dry-run` to preview.
- `node`, `python`, `dotnet` etc. — Run the cleaner for a single project type.

Options (common): `--dry-run`, `--yes`, `--all`, `--force`, `--safe`.

Aliases available: `search-and-destroy`

## License
- MIT

## Ignoring paths with .sadignore

Create a file named `.sadignore` in the repository root to prevent `sad` from listing or removing paths that would otherwise match targets. The file follows gitignore-style patterns when the `pathspec` package is installed; otherwise a simple glob-based fallback is used.

Examples:

- Ignore a directory anywhere in the tree:

	ignorethis/
	somedir/ignorethis

- Ignore a specific file:

  node_modules
  package-lock.json

- Anchor to repository root (requires `pathspec` for gitwildmatch semantics):

	/ignorethis/

- Negate a pattern (allow a subfolder):

	ignorethis/
	!ignorethis/keep/

Run `sad --dry-run` to preview deletions; `.sadignore` entries are respected in the preview.

# Changelog

All notable changes to this project will be documented in this file.

## 2026.0.0
- Initial release as search-and-destroy.

## 2026.1.0
- Added animation to menu.

## 2026.1.1
- Added `__init__.py` to classes package to ensure it is included in the distribution.
