Audioshelf is an accessible, open-source desktop audiobook player for Windows. Designed for a seamless and user-friendly listening experience. https://m-rajabi-dev.github.io/AudioShelf/
  • Python 98.8%
  • NSIS 1.2%
Find a file
2026-02-28 02:54:42 +03:30
.github/workflows update links 2025-12-11 16:55:29 +03:30
db_layer chore: update copyright year to 2025-2026 for all source files 2026-02-23 01:17:47 +03:30
dialogs chore: update copyright year to 2025-2026 for all source files 2026-02-23 01:17:47 +03:30
frames fix(i18n): localize shelf names in library, search, and context menus 2026-02-28 02:54:42 +03:30
locale docs: update README with translation guide and add pot template 2026-02-23 03:06:30 +03:30
playback chore: update copyright year to 2025-2026 for all source files 2026-02-23 01:17:47 +03:30
.gitattributes Docs: Fix encoding and update README links [skip ci] 2025-12-11 04:51:06 +03:30
.gitignore Release v1.0.0: Finalize app source, build workflow, and docs 2025-12-06 20:05:05 +03:30
AudioShelf.ico Initial commit: Source code, build scripts, and docs (AudioShelf V1.0) 2025-12-06 01:24:40 +03:30
AudioShelf.png Initial commit: Source code, build scripts, and docs (AudioShelf V1.0) 2025-12-06 01:24:40 +03:30
AudioShelf.py chore: update copyright year to 2025-2026 for all source files 2026-02-23 01:17:47 +03:30
AudioShelf.spec Initial commit: Source code, build scripts, and docs (AudioShelf V1.0) 2025-12-06 01:24:40 +03:30
book_scanner.py chore: update copyright year to 2025-2026 for all source files 2026-02-23 01:17:47 +03:30
CHANGELOG.md Update changelog for v1.1.0 2025-12-10 01:45:07 +03:30
create_version.py chore: update copyright year to 2025-2026 for all source files 2026-02-23 01:17:47 +03:30
database.py chore: update copyright year to 2025-2026 for all source files 2026-02-23 01:17:47 +03:30
i18n.py chore: update copyright year to 2025-2026 for all source files 2026-02-23 01:17:47 +03:30
libmpv-2.dll Add runtime dependencies (optimized mpv lib & NVDA controller) for accessibility support 2025-12-06 02:21:26 +03:30
LICENSE Relicense project to GNU GPLv3 2025-12-09 00:44:02 +03:30
nvda_controller.py chore: update copyright year to 2025-2026 for all source files 2026-02-23 01:17:47 +03:30
nvdaControllerClient.dll Add runtime dependencies (optimized mpv lib & NVDA controller) for accessibility support 2025-12-06 02:21:26 +03:30
README.md docs: update README with translation guide and add pot template 2026-02-23 03:06:30 +03:30
requirements.txt build: structure dependencies and pin versions in requirements.txt 2026-02-22 05:47:45 +03:30
setup.nsi installer: implement clean uninstall option and improve stability 2025-12-19 13:39:51 +03:30
updater.py chore: update copyright year to 2025-2026 for all source files 2026-02-23 01:17:47 +03:30
utils.py chore: update copyright year to 2025-2026 for all source files 2026-02-23 01:17:47 +03:30
VERSION Update changelog for v1.1.0 2025-12-10 01:45:07 +03:30

AudioShelf Logo

🎧 AudioShelf

Accessibility Platform Downloads License

The ultimate audiobook player that treats your books like books, not just files.


AudioShelf is a specialized desktop application designed for audiobook enthusiasts who need precision, organization, and accessibility. Unlike generic media players, AudioShelf understands that every book is a unique journey with its own progress, history, and settings.


🌟 Why AudioShelf?

Most players treat audio files equally. AudioShelf treats every book as a distinct entity.

📚 Book-Centric Management

  • Independent Progress: Remembers exactly where you left off in every single book, down to the second.
  • Smart Metadata: Automatically imports and manages book details, chapters, and file structures.
  • Metadata Persistence: Saves your progress, bookmarks, and playback state directly alongside the book files (.json). Move your library to another PC, and your listening history moves with it.
  • Dedicated History: Keep track of your recently played books in a dedicated history tab.

🎛️ Professional Playback Control

  • Smart Resume: Intelligently rewinds a few seconds after long pauses so you never lose the context of the story.
  • A-B Loop: Repeat specific sections of audio effortlessly—perfect for language learners.
  • Variable Speed: Adjust playback speed without distorting the narrator's voice (Pitch-corrected).
  • 10-Band Equalizer: Custom audio presets (e.g., Vocal Clarity) to enhance different narrators' voices.

🗣️ Accessibility First

  • Screen Reader Optimized: Built from the ground up with native support for screen readers (including NVDA and JAWS) for precise semantic announcements.
  • Keyboard-Driven: Every single feature is accessible via customizable hotkeys for a mouse-free experience.

🛠️ Powerful Tools

  • Auto-Updater: Automatically checks for and installs the latest updates at startup.
  • Sleep Timer: Configurable timer with system actions (Shutdown/Sleep/Hibernate).
  • Portable Mode: Run AudioShelf directly from a USB drive without installation.

⌨️ Essential Hotkeys

AudioShelf is designed to be keyboard-centric. Press F1 in the app for the full list.

Action Shortcut
Play / Pause Space
Stop (Reset) Shift + Space
Rewind / Forward Left / Right Arrow
Volume Control Up / Down Arrow
Speed Control J (Faster) / H (Slower) / K (Reset)
Quick Bookmark B
Sleep Timer T
Play Last Book Ctrl + L
Search Library Ctrl + F

📥 Download & Installation

Get the latest version directly using the links below:

Click here to Download Setup (.exe)

  • Run the installer to set up AudioShelf on your PC.

🎒 Option 2: Portable (No Install)

Click here to Download Portable (.zip)

  • Extract the zip file anywhere (e.g., on a USB stick) and run AudioShelf.exe.

📦 Option 3: Winget (Best for Updates)

Install securely via Windows Package Manager. Just open Terminal (CMD or PowerShell) and type:

winget install AudioShelf

Benefit: You can easily update later by typing winget upgrade AudioShelf.

View full version history on the Releases Page.


🛠️ For Developers (Running from Source)

AudioShelf is built using Python 3.14, but supports Python 3.10+.

  1. Clone the repository:

    git clone https://github.com/M-Rajabi-dev/AudioShelf.git
    cd AudioShelf
    
  2. Install dependencies:

    pip install -r requirements.txt
    
  3. Run the application:

    python AudioShelf.py
    

❤️ Support & Contributing

AudioShelf is a free and open-source project developed with passion.

  • Star this repository on GitHub
  • Donate via the in-app support menu.
  • Contribute: Pull Requests are welcome!

🌍 Translation & Localization

AudioShelf aims to be accessible to everyone. We are currently looking for contributors to help translate the app into more languages!

If you would like to help:

  1. Download the template: locale/AudioShelf.pot.
  2. Translate it using Poedit.
  3. Submit a Pull Request or contact the maintainer.

📜 License

Copyright (c) 2025-2026 Mehdi Rajabi. AudioShelf is Free Software: You can use, study, share and improve it at your will. Specifically you can redistribute and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.


Code Signing Policy

This project uses free code signing provided by SignPath.io and a certificate issued by SignPath Foundation.

Team Roles and Responsibilities

Privacy Policy

This program will not transfer any information to other networked systems unless specifically requested by the user or the person installing or operating it.