Hello everyone,
I have been teaching myself the rudiments of Python and have reached a stage where I would like to tackle a project of increasing complexity in order to "scratch an itch".
I have a large eBook collection (several gigabytes, organized in folders according to topic, mostly .pdf files with the occasional .djvu, .html, and .chm). I have tried a number of eBook manager apps and have found all of them lacking in key areas, or simply unavailable for Linux.
Therefore, I would like to write an eBook manager application in Python that can perform the following tasks:
- Recursively import all files in a directory and its sub-folders into application's database.
- Link from entry in database to actual eBook file; open file from application.
- Rename, relocate, and delete files from application.
- Select default application to open arbitrary file types.
- Fetch metadata in bulk from Amazon.com, the Library of Congress, or other repositories.
- Allow the creation of reading lists.
- Allow tags, notes, ratings.
Optional, but would be nice:
- Create BibTex references from arbitrarily selected items.
- Display cover as image (à la Beagle).
- Text snippets (also à la Beagle).
So, my questions are:
How would you go about tackling this project?
Which libraries would I have to learn in order to achieve the desired functionality?
What other resources (tutorials, source code, etc.) do you recommend?
Thank you in advance!