8e594387afd12868ba96833c7c69210394857d20
- Remove all font size and margin specifications to respect user's theme - Remove Top N control (now fixed at 10 entries) - Move time period selection next to analyze button in same row - Use proper button labels: 'Add Database File' and 'Clear Database Files' - Remove manual layout margins/spacing to use system defaults - Simplify controls layout with database controls on left, analysis on right - Let the operating system handle proper spacing and theming
slskd Transfer Statistics
A GUI tool to analyze upload and download statistics from your slskd transfers database.
Features
- Analyzes uploads and downloads stored in the transfers.db database(s)
- Automatically finds and combines data from multiple database files
- Backwards compatible with both old and new database formats
- Calculates total transfers, data transferred, and unique users
- Shows average transfer speed and duration
- Lists top users by data transferred
- Shows statistics by file type
- Filter statistics by time period (All time, Last month, Last year)
- User-friendly graphical interface with summary and detailed tables
Requirements
- Python 3.6+
- SQLite3
- PyQt5
- matplotlib
- mplcursors
Installation
- Clone or download this repository to your local machine
- Install dependencies:
pip3 install PyQt5 matplotlib mplcursors - Place your
transfers.dbfile in the same directory as the script, or use the file browser to select database files
Usage
# Launch the GUI application
python3 slskd_stats_gui.py
With the GUI, you can:
- Select one or more database files using the file browser
- Choose time period from dropdown (All time, Last month, Last year)
- Set the number of top entries to display
- View upload and download statistics side-by-side
- See summary statistics and detailed tables for users and file types
- NEW: Visual time series graphs showing transfer trends over time
Example Output
The GUI displays:
- Summary sections showing total transfers, data transferred, unique users, average speeds, and error rates
- Top Users tables showing users ranked by data transferred
- Top File Types tables showing file extensions ranked by data transferred
- Visual Stats tab with interactive time series graphs:
- Transfer amounts over time (uploads, downloads, errors, new users)
- Transfer ratios over time (speeds, error rates) with dynamic y-axes
- Interactive hover tooltips showing exact values and dates
Database Compatibility
This tool automatically detects and works with both:
- Old format: Text-based
Statecolumn - New format: Integer
State+StateDescriptioncolumns
About
This tool is designed to work with the transfers.db SQLite database created by slskd, a Soulseek client daemon. It helps you understand your sharing patterns and track transfer statistics.
License
MIT
Description
This tool is designed to work with the
transfers.db SQLite database created by slskd, a Soulseek client daemon.
Languages
Python
100%