Kindelabra – Manage your Kindle Collections

Kindelabra lets you create, edit, and sort your books into collections on your Amazon Kindle.

I adore my Kindle 3 and have no less than rediscovered my passion for reading since getting mine, but managing collections is an absolute chore because you need to add books one by one, page by page, a tedious process at best. Collections are similar to folders on your computer except that the same copy of a book can be part of more than one collection at the same time.

Browsing my Kindle after I’ve organized all my books into collections is great, but getting the books into those collections is the difficult part… until now.

Please make a donation if you find Kindelabra useful! I’ll be really grateful for the beer money :)









Features:

  • Create, rename, and delete collections
  • Add multiple books to multiple collections at once
  • Delete multiple books from a collection
  • Backs up your collections automatically (stored in the “system” folder)
  • Load backed up or saved collections
  • Supports manga exported using Mangle
  • Runs on Linux and Windows

Git repository

Kindelabra is released under the Creative Commons GPLv2 License

Installation:

Windows:

  1. Download the installer and run install.bat to install the graphical interface for my program, PyGTK
  2. Download the program
  3. Run Kindelabra.py to start managing your collections.

Linux:

  1. Install Python and PyGTK: sudo apt-get install python python-gtk2
  2. Download the program
  3. Run Kindelabra.py to start managing your collections.

Upgrading:

Download the latest version and run Kindelabra.py

Support:

MobileRead Forums

 

30 Responses to Kindelabra – Manage your Kindle Collections

  1. Katie says:

    Hey, I’m having issues installing the interface.
    It says that the system cannot find the files. I’m on Windows. Can you help?

  2. John says:

    Hello,

    Any chance for a version of this for OS X?

    Best Regards
    John

    • rpeng says:

      I’d like to rewrite the program in Java eventually and make it Mac compatible, but just haven’t gotten around to it…

      • mecano says:

        java will be a bad move as Apple removed it from base system. How about to build a gtk less version (command line) as OSX got python?

  3. rain says:

    I tried to manage my kindle collection with this software, but it failed, my kindle remained the same as before.

  4. Stefan says:

    Hi,

    the Donate-Button just takes me to the Paypal starting page without any clue how to donate anything.

    Kind regards
    Stefan

  5. bill says:

    Will I be able to sort my collections (i.e., folders). Will it interfere with the other collections app I have.

    • rpeng says:

      It should be able to read and edit your existing collections. The collections are saved in a standard format on your Kindle, so any app will have to stick to that standard when it manages your collections.

  6. Oliver says:

    Are there any requirements for where the kindleabra.py file must be located relative to the Python files? I installed the Python to a Python 2.7 folder on a drive and put the kindleabra.py file in this directory. Double clicking the .py file just flashes a command screen so fast I can’t read it. What am I doing wrong?

    • rpeng says:

      Hi Oliver, if you run the installer from the zip file above, it should install everything you need to run kindleabra.py from anywhere. The file doesn’t have to be in the Python 2.7 folder to run it.

  7. Daniel says:

    Running into some issues lately, particularly with the read/write functions involving my Kindle, so this may not even be an issue you yourself can help me out with.

    Basically, I’m getting a line when attempting to select my device stating: IOError: [Errno 2] No such file or directory: ‘H:\\System\collections.json’

    On top of that, I’ve been having some issues even using Mangle or even copying files directly into the Kindle itself, although that problem seems to come back and out occasionally as well.

    Hard-resetting the Kindle itself doesn’t do anything, and the oddest part is that sometimes this issue manages to go away after I’ve fiddled with random stuff. Any ideas?

  8. Shree Mulay says:

    I’m having difficulty getting this to run on my Windows 7 machine. I used the installer and when I click on the file, a quick command window pops up and then instantly disappears – This happens too quickly for me to read what error message is given.

    Is there any assistance for this? How can I run the program from the command line (if possible)?

  9. Denni says:

    Love the concept, the inteface package seemed to install without a hitch, but when I run kindelabra.py nothing seems to happen. There is a flash on the screen, and then nothing. I am using Win 7, any ideas?

    Thanks

  10. John says:

    THANK YOU. You have no idea how helpful your program is!!

  11. Igor says:

    I noticed it( al least the linux vertion) does NOT work with azw3 files. Will it be fixed in the near future? Thanks!

    • rpeng says:

      Sorry, I’m not updating this software anymore. However, the source code is free for anyone to use/modify so maybe someone on the MobileRead forums would be interested in adding support for this.

  12. nicoler says:

    Hi just tried downloading this for windows 7 but this is showing when I run the installer I have none of the files? So it won’t download any help would be appreciated thanks

  13. Michael says:

    Any experience with Kindle Paperwhite?
    For some reason a lot of the management tools available do not support Paperwhite management of collections – so I really hope this one will do the trick.

  14. Tom says:

    Traceback (most recent call last):
    File “C:\Users\Gao\Desktop\richardpeng-Kindelabra-ca32a20\Kindelabra.py”, line 14, in
    import gtk
    File “C:\Python27\lib\site-packages\gtk-2.0\gtk\__init__.py”, line 40, in
    from gtk import _gtk
    ImportError: DLL load failed: Can not find the specified program.

    Any ideas? Thanks.

  15. Dumitru says:

    It seems that the program doesn’t work with Kindle Touch version 5.3.2.1. It says [Errno 2] No such file or directory: '/media/Kindle/system/collections.json'

    I looked around the folders on my Kindle and there is no collections file at all.

    • rpeng says:

      The newer Kindles might not manage their collections with that file anymore. I developed this program for my original Kindle.

  16. Dennis says:

    Really nice. Finally found a program that is fast and works. I was using the calibre plugin for managing collections, but Calibre is extremely slow. THanks.

  17. Dennis says:

    So I tried using this program on Arch (It’s using the latest bleeding-edge version of everything; could that be the problem?) and it has a problem. The program loads, but it doesn’t detect anything when I point it to my Kindle. (Kindle 4) This pops up in the terminal:

    Traceback (most recent call last):
    File “Kindelabra.py”, line 395, in refresh
    self.kindle.init_data()
    AttributeError: KindleUI instance has no attribute ‘kindle’

    Any ideas? I’ve also posted this in the MobileRead thread.

    • Dennis says:

      EDIT: (also on MobileRead) So I tried it on my known working Ubuntu install, and it failed there too. I then realized I needed to actually go INTO the folder and then press OK on the selector. It worked. I then tried the same thing on Arch, but it got some really long error output:


      Loading documents.........................................Traceback (most recent call last):
      File "./Kindelabra.py", line 108, in load
      self.refresh(widget)
      File "./Kindelabra.py", line 395, in refresh
      self.kindle.init_data()
      File "/home/dennis-arch/Programs/richardpeng-Kindelabra-1f78da6/kindle.py", line 125, in init_data
      self.load_folder(folder)
      File "/home/dennis-arch/Programs/richardpeng-Kindelabra-1f78da6/kindle.py", line 133, in load_folder
      for root, dirs, files in os.walk(os.path.join(self.root, path)):
      File "/usr/lib/python2.7/os.py", line 294, in walk
      for x in walk(new_path, topdown, onerror, followlinks):
      File "/usr/lib/python2.7/os.py", line 284, in walk
      if isdir(join(top, name)):
      File "/usr/lib/python2.7/genericpath.py", line 41, in isdir
      st = os.stat(s)
      UnicodeEncodeError: 'ascii' codec can't encode character u'\xf1' in position 106: ordinal not in range(128)
      q^CTraceback (most recent call last):
      File "./Kindelabra.py", line 416, in
      KindleUI()
      File "./Kindelabra.py", line 79, in __init__
      gtk.main()

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>