@jawish/yeet
v1.0.0
Published
CLI tool to remove build artifacts from web projects
Maintainers
Readme
yeet
A CLI tool to remove build artifacts from web development projects.
Installation
bun install -g @jawish/yeetOr run directly with npx:
bunx @jawish/yeetUsage
Run yeet in your project directory to open the interactive interface:
yeetCommands
| Command | Description |
|---------|-------------|
| yeet | Open interactive mode |
| yeet init [path] | Create a config file (default: ~/.yeet.json) |
Options
| Flag | Description |
|------|-------------|
| -t, --tree | List detected artifacts as a tree |
| -l, --last | Remove items marked quickSelect in config |
| -n, --dry-run | Show what would be removed (use with -l) |
| -h, --help | Show help |
| -v, --version | Show version |
Examples
yeet # Interactive mode
yeet --tree # List all detected artifacts
yeet --last # Remove quickSelect items
yeet --last --dry-run # Preview what would be removed
yeet init # Create ~/.yeet.json
yeet init .yeet.json # Create config in current directoryDetected Artifacts
By default, yeet detects:
node_modulesdirectories- Lock files (
package-lock.json,yarn.lock,pnpm-lock.yaml,bun.lock) - Build outputs (
dist,build,out,.output) - Framework caches (
.next,.nuxt,.svelte-kit,.astro) - Bundler caches (
.cache,.vite,.parcel-cache) - Monorepo caches (
.turbo,.nx) - TypeScript build info (
*.tsbuildinfo) - Test artifacts (
coverage,test-results,playwright-report) - Log files (
*.log) - OS files (
.DS_Store,Thumbs.db) - Temporary files (
.temp,.tmp)
Configuration
yeet works without configuration. To customize behavior, create a config file.
Creating a Config File
yeet init # Creates ~/.yeet.json (user-level)
yeet init . # Creates .yeet.json in current directory
yeet init path/to # Creates path/to/.yeet.jsonConfig File Locations
Config files are loaded and merged in this order (later overrides earlier):
- Built-in defaults
~/.yeet.jsonor~/.config/yeet/config.json(user-level).yeet.jsonat project root (nearestpackage.jsonor.git).yeet.jsonin current directory
Config File Structure
{
"version": "1.0.0",
"categories": [
{
"id": "node_modules",
"name": "Node Modules",
"description": "Project dependencies",
"priority": "high",
"quickSelect": true,
"safetyLevel": "safe",
"patterns": [
{
"pattern": "node_modules",
"type": "directory",
"description": "Node.js dependencies folder"
}
]
}
]
}Category Fields
| Field | Type | Description |
|-------|------|-------------|
| id | string | Unique identifier |
| name | string | Display name |
| description | string | Category description |
| priority | "high" | "medium" | "low" | Sort priority |
| quickSelect | boolean | Include in --last command |
| safetyLevel | "safe" | "safe_with_reinstall" | "caution" | Risk level |
| patterns | array | File/directory patterns to match |
Pattern Fields
| Field | Type | Description |
|-------|------|-------------|
| pattern | string | File or directory name to match |
| type | "file" | "directory" | "glob" | Pattern type |
| description | string | Pattern description |
Safety
Files are moved to the system Trash, not permanently deleted. This allows recovery if needed.
Development
bun install
bun run dev # Run in dev mode
bun run build # Build binary
bun run typecheck # Type checkLicense
MIT
