Download the PHP package indemnity83/book-tools without Composer
On this page you can find all versions of the php package indemnity83/book-tools. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download indemnity83/book-tools
More information about indemnity83/book-tools
Files in indemnity83/book-tools
Package book-tools
Short Description Librarian CLI: A simple tool to organize and shelve audiobooks from import folders into a structured library.
License MIT
Homepage https://github.com/indemnity83/book-tools
Informations about the package book-tools
π Book Tools (librarian
CLI)
A simple command-line tool for managing audiobook files and organizing them into a clean, structured library.
Perfect for post-processing audiobooks prepared via AudioBookShelf or similar apps.
Command name:
librarian
Folder / repo name:book-tools
Current available command:shelve
π Commands
shelve
Organizes and moves books from an import directory into a structured destination library.
`
Arguments
Argument | Description |
---|---|
importFolder |
(Required) Path to the import folder. This folder should contain subfolders for each book with metadata and files. |
destinationFolder |
(Optional) Path to the destination library root. Defaults to the current working directory if not provided. |
Options
Option | Description |
---|---|
--dry-run |
Shows what would be done without making any changes. |
--pretend |
Alias for --dry-run . |
π¦ How it works
The shelve
command will:
- Scan the
importFolder
for book subfolders. - Each book folder must contain a
metadata.json
file (produced by AudioBookShelf). - Files will be moved into:
- If no series β simpler path without series folder.
- If multiple audio files β filenames will include
Part 1
,Part 2
, etc.
-
After processing:
- If in
--dry-run
β no files will be moved, only output shown. - If real mode β files are moved, extra files (cover, metadata) copied, and original import folder removed if empty.
- If in
β Example
Will scan _import
folder and move books to the main audiobooks library, cleaning up the import folder after.
Will show exactly what would happen, but not move anything.
π Future roadmap
This is version 1 (MVP) with only the shelve
command.
Future tools planned may include:
scan
β check library for missing metadatarename
β force renaming of existing library to match patternscleanup
β remove orphaned or duplicate files
π§Ή Development and testing
Feature and unit tests are provided using PestPHP. To run tests:
You can also test the CLI directly:
π·ββοΈ Contributors
Currently maintained by indemnity83. Pull requests welcome as the tool expands!
π License
MIT β do what you want, but please donβt sell it without adding value.
All versions of book-tools with dependencies
laravel-zero/framework Version ^11.36.1
laravel-zero/phar-updater Version ^1.4