Alternatives to TiddlyDrive (for hosting/auto-saving on Google Drive)

I’ve loved using TiddlyDrive and still have it as an add-on app in my main Google Drive but can’t add it to any other new accounts because the app is no longer maintained and no longer in the Google Workspace Marketplace.

What are the best ways to go forward?

Is it possible to use the source files of TiddlyDrive, publish on GitHub.io and mimic what the previous add-on was doing? If so, any tips on how to do so?

Are there alternatives to auto-saving on Google Drive the way TiddlyDrive was allowing to do?

What are the best other alternatives that mimic that use case as close as possible? TiddlyHost? But I’m not super comfortable hosting my TW elsewhere…

Many thanks!

The simplest alternative would be to use Google Drive for desktop to sync your wiki across devices and the Timimi addon to edit the HTML file.

However, Google Drive sync can be slow, and you might overwrite changes if you work from multiple locations on the same wiki within a short time frame. It could also be more challenging to set up on mobile devices.

A better option would be to use the TiddlyWiki PWA, which syncs across devices much faster. You could either host the server yourself or use Glitch. The files are encrypted, so your privacy is protected.

Personally, this is my preferred method for my private notes. For public wikis, I use Tiddlyhost and GitHub Pages (as a backup). If you need help to publish a wiki on either platform, let me know, I’ll be happy to help.

If you wrote those up as howto articles here on the forum, I’d be delighted to link them in an upcoming TiddlyWiki Newsletter.

Thank you for your detailed responses.

The timini add-on is neat but this wouldn’t work across devices (on my phone for instance, like TiddlyDrive allowed me to do).

If I understand correctly, if I want to keep my TW private, I would need to opt for the paid version of Glitch, correct? Hosting on my own server would likely require a constantly-running machine, which I’m not likely going to do.

Thanks again!

On android you would need to use an app like TidGi-Mobile, but I dont use it so I can’t say if it’s a good option or not. You don’t need to pay for glitch, but the free version make the server sleep when not in use so sometimes you will need to wait a few seconds before being able to access your wiki. If self-hosting is not an option and you don’t like the delay that the free version of glitch can add, the next best free solution is tiddlyhost. Make sure to use the external core version for faster saving times!

Saving with github page is faster than on tiddlyhost (but slower than TW PWA), however github is slower to update the html server on github page while it’s nearly instantaneous on tiddlyhost. If you save you wiki on github page, then reload your tab, it will seems like your changes were not saved. This is because when you save, you send the html file to your github repo, then a github action is triggered and only then the github page get updated. This can take 1 minute at worst - for me at least, this is too long.

Wow such detailed responses, again, thank you so much. I’m very tempted to try the glitch version and see how it goes (I’ll update this thread). I must have been confused when I saw that the free version implies “projects and code are public by default” so that’s why I thought I wouldn’t be able to keep my TW private. Thanks again!

So I’m stuck at the What to do next stage. I’m not sure I understand what a storage slot is. I have my TW HTML file and I’m not sure where to upload it (I don’t want to create a fresh app wiki). I think I need to go to the “Try it out” form but then it loads a new TW, and I’m not sure where to from now either. Any help appreciated!

Update 1: I went to “try it out”, managed to add the token and glitch URL in the control panel “Synchronization” settings but that’s it, I’m still confused where do I replace the default wiki with mine – and how to understand that it’s secure.

Update 2: Clicking on “Ask for it” for persistent storage permissions doesn’t trigger anything on Chrome. I went to the site’s settings in Chrome and can’t see any “storage” permission to activate either.

Update 3: tried refreshing but I now get “Could not sync with server “https://xxx.glitch.me/”! You might be offline (or the server is).” So I went ahead and reloated/relogged-in the glitch page but the same error persists.

Hold on, I will make a video tutorial. I’ll update this post when it’s done.

3 Likes

And I for one would be greatful to read them. :crazy_face: :wink:

Would be awesome, thank you so much!

Sorry for the delay, I encountered a driver issue with my gpu … Here’s a voiceless tutorial, it should be explicit enough.

Note that I utilize Proton Pass for its convenience, though it is entirely optional. I have the proton pass app on my phone, so it’s easy to login into my wiki when I switch devices.

To create a new wiki on glitch:

To use an existing wiki with TiddlyPWA on glitch:

  • Create a new wiki
  • Drag and drop your wiki into it. Make sure to manually export the app & sync the tiddlers, if your wiki is big some tiddlers might not be synced automatically otherwise (you only need to do it when you import the wiki, after that it will sync properly).

Asking for storage permission is not possible on chromium based browser, such as edge and chrome. It’s not an issue usually, if you visit your wiki frequently enough it will automatically be granted.

This might be caused by a blank space left in the token when you copy/pasted it. I double click to select the token string then copy it with ctrl+c to avoid this issue.

2 Likes

Wow super cool, thank you for the videos, it’s so much clearer. Do you know if there’s a way afterwards to save/backup the entire wiki as an HTML file (not just exporting the tiddlers as an HTML file, which one can do from the wiki itself, but the actual wiki itself)? Thank you again!

Yes, by clicking the save button, you will have the option to download a standalone version of the wiki.

I prefer using a custom button that I pin to the page toolbar for easier access, which adds a timestamp to the file name. Drag and drop this json file into your wiki to import it:

$__ExportWikiToHTML.json (695 Bytes)

1 Like

So cool – and duh, it was now obvious where to find the single-file export, facepalm… thank you so much, @telumire you’ve been incredibly helpful! It all worked exactly as you said.

I think I might just as well use this for my main account instead of TiddlyDrive because, as you have noted, it’s so much faster. I’m still a little uncertain on how the encryption works: I don’t understand where the wiki content is actually stored for example?

See this tiddler: https://tiddly.packett.cool/#Encryption

As I understand it, your wiki is encrypted using SHA-256 in a sqlite database stored on the sync server & your local device (local storage). AFAIK this is very secure as long as you don’t leak your token and password.

From the doc:

For each tiddler stored:

  • the title is hashed into a database key using HMAC-SHA-256
  • the tiddler content (possibly compressed, then padded to 256 bytes to avoid granular length leakage) is encrypted with AES-GCM-256 with a random 96-bit nonce
  • the title is encrypted (padded to 64 bytes to avoid granular length leakage) separately for performance using the same scheme
  • the modification time and the deleted flag are stored unencrypted (to make sync conflict resolution possible without having any keys)

Thank you for this! The sync server is Glitch in this case, correct? So the sqlite database is on Glitch as well or? I see in the Glitch logs for my project that a bunch of sqlite JavaScript files were downloaded from deno.land but likewise I don’t see where those files went: they’re neither under Assets or Files?

Another option is to use rclone to serve up your wiki through webdav as mentioned here: Use WebDAV for saving a single file wiki

To your local machine, the wiki is served over a web server where saving works without extensions or addons, but the single wiki gets saved to cloud storage.

Yes. If you look at the glitch.json file, you will see reference to the location of the db file:

"start": "DB_PATH=.data/tiddlypwa.db /app/.deno/bin/deno run [...snip...]

If you click on the Terminal button you can run linux commands to view a listing of the file:

$ ls -l .data/tiddlypwa.db 
-rw-r--r-- 1 app app 36864 Oct 17 01:32 .data/tiddlypwa.db

Amazing. Exactly what I needed to know to understand things better and verify things. Thank you very much as well, @btheado – I’m learning new things every day, I love it.