So I have been reading old threads, looking at previous TW Bookmark implementations, and thinking about how I would manage my (frankly huge) bookmark collection with TiddlyWiki.
The problem here seems to be getting them into TW. I'm frankly not going to do that manually, and that seems to be how all previous implementations work.
I thought there might be an API for this, but discovered how hard it is to request your own Chrome bookmarks via an API (literally impossible).
That made me realize that with my JsonMangler plugin, I now have what I need to parse Chrome's Bookmark json file with wikitext scripts.
There are two routs I could go with this, so I thought I'd bounce it off the community here.
1) Drag & Drop - manually drag & drop Chrome's Bookmark file onto Tiddlywiki. A plugin will invoke either `th-importing-tiddler` or `th-importing-file` in order to preprocess their json structure into the appropriate tiddlers, whatever that may look like.
Pros: one-action import function, handling duplicates 'behind the scenes', single file & server
Cons: requires manual action by the user, original Json structure is not retained
2) Tell TW where your Bookmarks live (server only) - setup a json tiddler to tell TW where your Bookmarks live on each device. TW will then load the Bookmarks file(s) as tiddlers, allowing wikitext scripts to parse, break down, and setup individual tiddlers for each data object.
Pros: Should(?) be able to pull updates when you update your browser's bookmarks (or sync) by a button press in the wiki.
Cons: Server only setup, possilbe(?) conflicts when TW server and browser try to write to the same file (can you set an externally loaded file to 'read-only'?), trying to pick up changes to the source file while the server is running (I think this is possible).
The key elements to pull out of Chrome's bookmark Json structure for each Bookmark are:
* name > title? caption?
* url > url? title?
* date_added > created
* id > $browser$_id (useful for re-import operations)
* type > bookmark-type (not familiar with other types, mine all say 'url')
Then there are the Folder objects that we could parse into Tags.
What do you all think?
Best,
Joshua Fontany