Skip to main content

Dolphin-inspired PyQt6 file explorer with Breeze icons

Project description

Pylphin

A fast, keyboard-friendly, Dolphin-inspired file explorer built with PyQt6 and the Breeze icon theme. Designed for Linux and Windows with a consistent dark theme, live drive rescan, quick-look previews, and a clean picker API.

Python Version License Platform


Features

  • Dolphin-style UI — Breeze Dark theme, breadcrumb navigation, icon/list/details views
  • Quick Look (GlimpseSpeedy) — Press Space to preview images, text, audio, and video without leaving the app
  • Live Drive Sidebar — Auto-rescanning device list with capacity bars and one-click eject
  • Cross-Platform — Native feel on Linux and Windows
  • Picker API — Use Pylphin as a file/folder picker dialog inside your own PyQt6 apps
  • Local-First Icons — Ships with 100+ Breeze SVGs; no internet required after install
  • MIME-Aware — Extension mapping + libmagic fallback for accurate file type icons

Installation

From PyPI

pip install pylphin

Linux Prerequisites

Pylphin uses python-magic for MIME detection on Linux, which requires the system libmagic library:

# Debian / Ubuntu
sudo apt-get install libmagic1

# Fedora / RHEL
sudo dnf install file-libs

# Arch
sudo pacman -S file

Optional Dependencies

For audio metadata display in previews:

pip install pylphin[audio]

Usage

Standalone File Manager

# Launch the GUI
pylphin

# Or via module
python -m pylphin

As a Picker Dialog

from pylphin import pick_file, pick_files, pick_folder

# Single file
path = pick_file(extension=".py")
print(path)

# Multiple files
paths = pick_files(extension=[".jpg", ".png"])
print(paths)

# Folder
folder = pick_folder(start_path="/home/user/Documents")
print(folder)

Embedding in Your Own App

from PyQt6.QtWidgets import QApplication
from pylphin import Pylphin

app = QApplication([])
win = Pylphin()
win.show()
app.exec()

Keyboard Shortcuts

Key Action
Alt + ← Back
Alt + → Forward
Alt + ↑ Up one directory
F5 Reload
F2 Rename selected
Delete Delete selected
Space Quick Look preview
Esc Close preview / cancel address edit
← / → Previous / next file in preview
Backspace Navigate back
Ctrl + H Toggle hidden files

Project Structure

pylphin/
├── src/pylphin/
│   ├── __init__.py          # Public API
│   ├── __main__.py          # python -m pylphin
│   ├── pylphin.py           # Main application
│   └── assets/
│       └── icons/           # 100+ Breeze SVG icons
├── pyproject.toml
├── README.md
└── LICENSE

Platform Notes

Platform Details
Linux ✅ Full support. Drive eject via udisksctl/eject. Requires libmagic1.
Windows ✅ Full support. Drive eject via DeviceIoControl + PowerShell fallback. Bundled python-magic-bin.
macOS ❌ Not supported. Uses Windows/Linux-specific APIs.

License

This project is licensed under the GNU General Public License v2.0.

See LICENSE for the full text.

The bundled Breeze icons are from the KDE Breeze Icons project and are licensed under LGPL-3.0.


Author

D. Saahishnu Ram


Contributing

Issues and pull requests are welcome on GitHub.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pylphin-0.1.0.tar.gz (136.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pylphin-0.1.0-py3-none-any.whl (336.1 kB view details)

Uploaded Python 3

File details

Details for the file pylphin-0.1.0.tar.gz.

File metadata

  • Download URL: pylphin-0.1.0.tar.gz
  • Upload date:
  • Size: 136.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for pylphin-0.1.0.tar.gz
Algorithm Hash digest
SHA256 da851a212a8c3ed4f455b8e174efd6a580f390426830f061ff8a2cd17233aacc
MD5 49f12530d822381fb95b2e03acc57fcf
BLAKE2b-256 86bc9859bee4e97b8a39d4fd6953dd94985ba2ba683a01cd51756064e30a4aeb

See more details on using hashes here.

File details

Details for the file pylphin-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: pylphin-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 336.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for pylphin-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3a62e3f0be42852c01abf614e517f3a12445f440dfaaf72d225e54e1f71f7075
MD5 a4a2002056fd2c86a70a7785440375ac
BLAKE2b-256 d8e258fd3208ce01118cb956dc1b394d3b1a1432a646613677ce6f38217b7dce

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page