#!/bin/bash
TARGET_DIR="${1:-.}"
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m'
echo -e "${YELLOW}Clearing JavaScript cache folders in: $TARGET_DIR${NC}"
removed_count=0
remove_dir() {
local dir="$1"
if [ -d "$dir" ]; then
echo -e "Removing: ${RED}$dir${NC}"
rm -rf "$dir"
((removed_count++))
fi
}
while IFS= read -r -d '' dir; do
remove_dir "$dir"
done < <(find "$TARGET_DIR" -type d \( \
-name "node_modules" -o \
-name ".next" -o \
-name ".nuxt" -o \
-name "dist" -o \
-name "build" -o \
-name ".cache" -o \
-name ".parcel-cache" -o \
-name ".webpack" -o \
-name ".rollup.cache" -o \
-name ".vite" -o \
-name ".turbo" -o \
-name ".nx" -o \
-name "coverage" -o \
-name ".nyc_output" -o \
-name "out" -o \
-name ".output" -o \
-name ".vercel" -o \
-name ".netlify" -o \
-name "storybook-static" \
\) -print0)
echo -e "${YELLOW}Removing cache files...${NC}"
find "$TARGET_DIR" -type f \( \
-name "*.log" -o \
-name ".DS_Store" -o \
-name "Thumbs.db" -o \
-name "*.tmp" -o \
-name "*.temp" \
\) -delete 2>/dev/null
echo -e "${GREEN}✓ Cleanup complete! Removed $removed_count cache folders.${NC}"
if command -v du >/dev/null 2>&1; then
echo -e "${YELLOW}Disk space check completed.${NC}"
fi