|
|
||
|---|---|---|
| alpha.py | ||
| readme.md | ||
| requirements.txt | ||
| run.ps1 | ||
| run.sh | ||
readme.md
File Tree Selector
A desktop GUI tool for browsing a directory tree, selecting files/folders, and exporting their contents as a single concatenated text block — useful for feeding code into LLMs.
What it does
- Displays a navigable file tree for any directory you specify
- Green checkbox = include in output, red = exclude
- Selection cascades: mark a folder green and all its children are included unless individually excluded
- Unreadable/permission-denied files are shown with strikethrough and cannot be selected
- "Generate" concatenates all selected files into a preview pane; "Copy All" puts it on your clipboard
Requirements
- Python 3.8+
pywebviewand its platform dependencies (see below)
Linux (additional system packages required)
pywebview on Linux requires GTK and WebKit2 — these cannot be installed via pip:
# Ubuntu/Debian
sudo apt install python3-gi python3-gi-cairo gir1.2-webkit2-4.0
# If on a newer distro (Ubuntu 24+), try:
sudo apt install python3-gi python3-gi-cairo gir1.2-webkit2-4.1
Windows
No additional system packages required. pywebview uses the built-in WebView2 runtime (included with Windows 10/11).
macOS
No additional system packages required. pywebview uses the built-in WebKit.
Running the app
Linux / macOS
bash run.sh
The script will create a .venv, install Python dependencies, and launch the app. On Linux, it checks for GTK dependencies first and exits with instructions if they're missing.
Windows
.\run.ps1
Run from PowerShell. If you get an execution policy error:
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned
Project structure
.
├── alpha.py # Main application (latest version)
├── run.sh # Setup + launch script for Linux/macOS
├── run.ps1 # Setup + launch script for Windows
├── requirements.txt # Python dependencies
└── README.md
Usage
- Launch the app
- Type (or paste) an absolute path into the path bar and press Enter
- The left panel shows the folder tree; click a folder to view its contents on the right
- Click a checkbox to toggle include/exclude — red = excluded, green = included
- Use the root folder checkbox to include/exclude everything at once, then carve out exceptions
- Click Generate to preview the output, then Copy All to copy to clipboard