TagStudio icon indicating copy to clipboard operation
TagStudio copied to clipboard

[suggestion] Plugin support or simple export of database

Open Qronikarz opened this issue 1 year ago • 2 comments

Hello. As promised, TagStudio is added to my TagsResearch repository. Took me a while because I stumbled upon few new programs in your comments section and found few new on Github and HN. You're free to check TagStudio entry and see if everything is correct (and maybe fill out empty spaces). But it's only based on the readme and screenshots so only the features that are currently in version 9.1.0-alpha were added.

Are there plans for plugin support? I would like to write a plugin that would take all files in the database and use as many details as possible to export a code that my QMV can use (for example: path, file name, type, size, tags). Alternatively just something that would export the file data in some text form (preferably JSON, but that's up to you) that can then be later processed by some other program.

Good job so far with TagStudio. Though I must say that we both have some fierce competition in this tagging field. But that's what makes it fun, right?

Qronikarz avatar Apr 25 '24 16:04 Qronikarz

plugins are planned as a future feature, but there are definitely a few features that are currently taking priority.

Good news on the export front though, right now the database is a json file everything can be parsed by other software if you're looking to start messing around, just be aware its alpha version software and breaking changes could happen, I know a conversion to a SQLite or similar database is planned for down the road but its good to know that the json export should be preserved.

example ts_library.json file created at the root of a library

{
    "ts-version":"9.1.0",
    "tags": [
         {"id":0,"name":"Archived","aliases":["Archive"],"color":"Red"},
         {"id":1,"name":"Favorite","aliases":["Favorited","Favorites"],"color":"Yellow"},
         {"id":1000,"name":"Drone Image","shorthand":"Drone","aliases":["Drone Image","Arial Photo",""],"color":"white"}
    ],
    "collations":[],
    "fields":[],
    "macros":[],
    "entries":[
        {"id":0,"filename":"Screenshot 2024-04-21 182532.png","path":"Screenshots"}
        ...
    ]
}

Loran425 avatar Apr 25 '24 16:04 Loran425

Hey there! Sorry I didn't get around to replying to your other issue open in the Solutions repo! I read it and checked out your own repos, but didn't get around to actually following up with you. I love what you're doing with the TagsResearch project! We have a lot of the same wants and needs when it comes to that, and I wish you all the best with QMV!

As for plugin support and exporting of the database, both are planned (although plugin support will be a much bigger task) and exporting the library in a more human readable format (still JSON but without any relational bits like the tag IDs) is definitely a priority! Even after a move to SQLite or similar, I plan on retaining a way to export in a human-readable format. Exporting/importing to/from other programs would be great functionality, and even if I'm not able to support plugins anytime soon I'd like to be able to have a standard export format that would let people more easily write their owns scripts to convert into whatever other tagging program's format they'd like!

CyanVoxel avatar Apr 25 '24 17:04 CyanVoxel