An open API service indexing awesome lists of open source software.

https://github.com/patrickjnr/shader-cache-remover

Shader Cache Remover
https://github.com/patrickjnr/shader-cache-remover

amd-dxcache directx-shader-cache directx-temp-cache nvidia-dxcache nvidia-glcache nvidia-temp-cache unity-cache unreal-engine-shadercache

Last synced: 4 months ago
JSON representation

Shader Cache Remover

Awesome Lists containing this project

README

          

# Shader Cache Remover

A modular application for safely detecting and removing shader cache files to recover disk space and resolve graphical issues.

## Screenshot
image

## Overview

Shader Cache Remover cleans temporary shader files generated by graphics drivers and game engines. These files improve performance but can become corrupted or outdated over time. This tool provides a safe, user-friendly interface to manage these caches.

## Key Features

- **Comprehensive Detection**: Supports 12 distinct cache providers:
- Graphics Drivers: NVIDIA, AMD, Intel
- Game Clients: Steam, Epic Games, GOG Galaxy, EA App
- Engines: Unreal Engine, Unity
- Browsers: Chrome, Edge, Firefox, Brave, Opera
- System: Windows DirectX/OpenGL
- **Safety First**:
- Dry Run mode to preview deletions
- Automatic backup system with restore functionality
- Protected system paths blocklist
- **Modern UI**: Dark-themed interface with real-time progress and statistics
- **History Tracking**: Detailed logs of past cleanup operations
- **System Integration**: Optional notifications and scheduled cleanup tasks

## Installation

### From Source

```bash
git clone https://github.com/PatrickJnr/Shader-Cache-Remover.git
cd Shader-Cache-Remover
pip install -e .
```

To install optional system integration features (notifications, tray icon):

```bash
pip install -e .[full]
```

## Usage

Run the application:

```bash
python remove_shader_cache.py
```

### Main Functions

- **Start Cleanup**: Deletes detected cache files.
- **Dry Run**: Simulates cleanup and logs pending deletions without touching files.
- **Restore**: Recover files from a previous backup.
- **History**: View statistics of past operations.
- **Cache Providers**: Toggle specific providers in the main interface.

### Configuration

Settings are stored in `.shader_cache_remover_config.json` in your user directory.
- Enable/disable auto-backups
- Set backup location
- Add custom cache paths
- Toggle provider scanning

## Project Structure

The application follows a modular architecture:

```
shader_cache_remover/
├── core/
│ ├── providers/ # 12 detection providers
│ ├── detection_service.py
│ ├── cleanup_service.py
│ ├── backup_service.py
│ └── history_service.py
├── gui/
│ ├── main_window.py
│ └── dialogs/ # Restore, history, settings
└── infrastructure/
├── notifications.py
└── scheduler.py
```

## Requirements

- Python 3.8+
- Windows (primary) or Unix-like OS

## Contributing

Contributions are welcome. Please ensure new providers implement the `BaseCacheProvider` interface.