Junk - Universal Cleanup Executor
A zero-friction Python CLI tool for automated cleanup of unwanted files and directories.
Problem Statement
Development repositories often accumulate unwanted files and directories:
/target/build directories*.logfiles__pycache__/Python cache directories/temp/temporary directories- Build artifacts and cache files
Manual deletion of these files is time-consuming and error-prone. Organizations need an automated solution that works universally across different project types and environments.
Solution Overview
Junk is a PyPI-distributed command-line tool that provides automated cleanup with zero user intervention required.
Execute with a single command:
junk
The tool operates by:
- Locating a
junk.fatconfiguration file in the current directory - Reading the specified list of files and directories for removal
- Executing deletions as specified
- Self-removing the configuration file upon successful completion
Installation
Install from the Python Package Index:
pip install junk-remover-cli
The tool is immediately available system-wide:
junk
Usage Instructions
Step 1: Create Configuration File
Create a junk.fat file in your project root directory. List files and directories to be removed, one per line:
/target/
/Server/plotter/output/main.png
/Server/temp/arch.json
__pycache__/
*.log
node_modules/
.DS_Store
Step 2: Execute Cleanup
Run the cleanup command:
junk
Step 3: Verification
All specified items are removed, and the junk.fat configuration file is automatically deleted upon successful completion.
Key Features
- Zero User Interaction: No confirmation prompts or manual intervention required
- Universal Compatibility: Functions in any directory containing a
junk.fatconfiguration file - Self-Managing: Automatically removes configuration file after successful execution
- Error Handling: Preserves configuration file when deletions fail for retry capability
- Cross-Platform: Compatible with Windows, macOS, and Linux environments
- Encoding Support: Handles multiple file encodings automatically
Operational Behavior
Success Case
When all specified items are successfully deleted, the junk.fat configuration file is automatically removed.
Partial Failure Case
When some items cannot be deleted, the junk.fat configuration file is preserved to allow for retry operations.
Missing Configuration Case
When no junk.fat file is present, the tool exits gracefully with an informative status message.
Integration with Development Workflows
This tool is designed for integration with automated development workflows:
- Configuration Generation: AI code assistants or scripts generate project-specific
junk.fatfiles - Execution: The junk tool executes cleanup operations without human intervention
- Universal Application: Consistent workflow across different programming languages and project types
Configuration Examples
Web Development Projects
node_modules/
dist/
.cache/
*.log
.DS_Store
Python Projects
__pycache__/
*.pyc
.pytest_cache/
build/
*.egg-info/
Java Projects
target/
*.class
*.jar
*.war
Safety and Security
- Operations are limited to explicitly listed items in the configuration file
- No wildcard expansion or pattern matching beyond exact path specification
- Non-existent files and directories are gracefully ignored
- Comprehensive logging provides clear feedback on all operations performed
License
This project is distributed under the MIT License. See the LICENSE file for complete terms and conditions.
Contributing
Contributions are welcome through standard open-source channels. This tool maintains a focused scope centered on the core principle of zero-friction cleanup execution. Please ensure any proposed changes align with this fundamental design philosophy.
Support
For issues, feature requests, or technical support, please utilize the project's issue tracking system on the source code repository.
Junk CLI: Making cleanup operations universal, automated, and reliable.
Metadata
Release files for junk-remover-cli 0.1.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| junk_remover_cli-0.1.3.tar.gz | 5.9 kB | Without provenance | Details for junk_remover_cli-0.1.3.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| junk_remover_cli-0.1.3-py3-none-any.whl | Python 3 | none | any | Details for junk_remover_cli-0.1.3-py3-none-any.whl |
Total release size: 12.7 kB
Release files / junk_remover_cli-0.1.3.tar.gz
| Download URL | junk_remover_cli-0.1.3.tar.gz |
|---|---|
| Size | 5.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5af051311ed709bfc23add103691a63bbb36f600f129acd5889cda89fef11c76
|
|
BLAKE2b-256 checksum How to use checksums |
29d3d7058b0fb855f98d0993b2c5ee4e3fbd670ff9b15ee34615d7033bb4ffae
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.9.0
|
Release files / junk_remover_cli-0.1.3-py3-none-any.whl
| Download URL | junk_remover_cli-0.1.3-py3-none-any.whl |
|---|---|
| Size | 6.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c5db98ca9b900db9d06c192f09a910617960d106b4233501dd883aa4a20356d1
|
|
BLAKE2b-256 checksum How to use checksums |
fa2cf83bd410249cb56b81c5b2a748636782de323dac95a29418b6a4827a314a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.9.0
|
Security for junk-remover-cli 0.1.3
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.