Topic: BooruToolkit - local library manager for e621 (tag, upload local files to your e621 favorites, upvote them and more!)

Posted under e621 Tools and Applications

Hello people of e621!

This is a bash script that I wrote to organize my local e621 library. I needed something lightweight, easy to modify and that wouldn't change my source files, and thus BooruToolkit was born.

(previously TagOrganizer, project was renamed to BooruToolkit because I feel like it's no longer exclusive to e621)

Out of the box this app supports Windows 10 (using Bash on Windows) and Linux, but you can easily modify it to support anything else, for example MacOS, Cygwin or third-party tagging software.

Features
  • Download metadata from e621 (URL can be changed to e926.net to avoid filters)
  • Tag files using softlinking on Windows and Linux (and possibly MacOS)
  • Tag files using TMSU
  • Upload local library to e621 favorites as well as upvote all images from it
  • Download new images from specified queries

Download/Contribute:

GitHub Repository

Updated

Seems like it overlaps quite a lot with TMSU 's VFS (which does support multiple-tag filtering, but VFS currently isn't enabled on Windows).

Updated by anonymous

savageorange said:
Seems like it overlaps quite a lot with TMSU 's VFS (which does support multiple-tag filtering, but VFS currently isn't enabled on Windows).

Huh, that is a very interesting piece of software! It would definitely be better than what my script does right now, especially on Linux. I'll implement it as an option when I get a chance to.

Edit: TMSU support is now live.

Updated by anonymous

Hexl said:
Hello people of e621!

This is a bash script that I wrote to organize my local e621 library. I needed something lightweight, easy to modify and that wouldn't change my source files, and thus TagOrganizer was born.

Out of the box this app supports Windows 10 (using Bash on Windows) and Linux, but you can easily modify it to support anything else, for example MacOS, Cygwin or third-party tagging software.

I've designed this app with modularity in mind, which means that you can easily implement support for your own software. I've added a template as well as a short manual on how to implement your own modules.

Download/Contribute:

GitHub Repository

How it works:

Symlink methods (compatibility):

1) Create a folder for every tag that your images have
2) Soft-link images into their corresponding folders based on what tags they have. Here's what it would look like.

Custom methods:

Function "proc" is iteratively run for every file and every tag in that file. As soon as it's called, you have access to source path, destination path, full name, MD5 and a tag, all available as standard bash variables.

Please consult MODIFY for instructions on creating your own methods.

Features
  • Supports TMSU out of the box
  • Can be used with e926.net to avoid filters
  • Easily add your own methods for tagging
  • Everything is broken into functions, code is easy to read and understand.
  • Soft-link tagging is zero-maintenance and doesn't require extra software
  • Doesn't touch the original files, no backups required
Known bugs
  • File deletion in symlink mode isn't handled yet, expect dead links in your tag folders if you delete an image.

Edit 1Jun17: made description a bit more clear.
Edit 1Jun17: TagOrganizer 2.1

Heh... Makes my bash organizer look like trash. Might have to post it somewhere someday.

Updated by anonymous

Huge update! Among many other changes, you can now upload your local files to e621 favorites (as well as upvote them!), a feature that I've found to be a great alternative to local tagging.
Favorite your local files and use fav:username and whatever you're searching for.

Please report any problems that you can find, I'm still ironing out the sharp edges.

Updated by anonymous

  • 1