Tiddlywiki with Solid Pod storage

I shall check the error.

The tiddlers are persistent, they are saved on the Pod.
Next time you log in they will be loaded in your tiddlywiki, where you can read, edit, delete … them
Like in any tiddlywiki.

I have seen your tiddlers on your pod wh
ere they are stored as .ttl resources

Cool! i’ve logged out and back in… And indeed my instance of the wiki persists across sessions, at least in terms of contents, i.e. the .tid files i created… Or rather .ttl files (i guess that transformation is the magic of your app having its storage in a Solid pod).

Also i have tested in Firefox 77.0.1 (64-bit) and Safari Version 13.0.1 (13608.2.11.1.10), along with my default Chrome Version 83.0.4103.97 (Official Build) (64-bit) -all on Mac HighSierra (10.13.6), and the experience is consistently good across the board. Awesome!

Next: i’m curious to know if other edits i may make -e.g. look & feel, behaviour, plugins, etc.- will likewise persist across sessions, or if this Solid integration is just about content (tiddler) storage… But before i go there, @bourgeoa , i should ask: what is your intention with this, and what sort of use by community members is permissible, encouraged (vs not)?

1 Like

Happy that this project got interest again.

  1. My initial pupose was to offer a link between tiddlywiki and solid community based on RDF data model (turtle files). With the intention to offer reusability of the data’s with any compatible app.

  2. I left the work as is, not seeing practical users interest

  3. Tiddlywiki seems to have a large community with interest on simplicity to create apps, but also security and privacy. Solid could be a way to go

  4. the implementation of solid .ttl files through a tiddliwiki syncadaptor (standard tiddlywiki concept) leaves the tiddlywiki untouched, and you can make any changes you want (look and feel, behaviour, plugins) to the tiddlywiki (they are stored as a regular tiddlywiki index.html).

  5. tiddliwiki itself do not need to be on a pod, it can because a pod is a web server. To upload it on your pod is indirect

  • create a index.html and coy/paste the index.html content,
  • upload, download or copy the index.html using solid-file-manager or solid-ide
  • you can also import the syncadaptor to your own tiddliwiki (TW5, I did not check the latest version)

Hope to be clear enough
Feel free to do what you want, it’s free and open source.

I shall try to solve the bug you reported on internal javascript error. It seems to be related to the creation of tiddlers when not connected to a solid pod.

1 Like

Thanks, @bourgeoa ; this gets better and better, the deeper I dig into it :slight_smile:

Am stuck at the moment, in trying to implement my own instance (per your instructions in point 5 above), because your sync adapter plugin has the default subfolder (below root: /public) defined as “tiddlers” and that is a non-editable parameter… Yet I don’t want to use that, because then I would lose my working instance at bourgeoa.inrupt.net. (I took a peek into the possibility of editing this shadow tiddler, but didn’t understand the code behind it, so I left it alone). Can you suggest a way around this?

Also, I wonder: can you point me to a solid-file-manager and/or solid-ice that you would recommend as being n00b friendly (ideally a binary GUI app, that doesn’t call for compiling from source, etc.)? I tried copy-pasting code directly through the web interface at inrupt.net, but that didn’t work out so well; created a file named “index.html” and then pasted source of your site into that document, but that then changed the filename to title of the web page.

b/t/w: i really appreciate what you’ve created here, bourgeoa, and your ongoing support of it, despite the lukewarm show of interest to date. I think that Solid storage for TiddlyWiki is a brilliant combination, and the fact of it’s being under-appreciated at this point is simply a function of combining two niche technologies (one of which has an unfortunately silly-sounding name), which makes for a very small intersection set ATM. This will soon change, i believe, if we can focus on building some apps(s) of practical value to ordinary people (these Solid waters are still pretty far from mainstream approachability, it seems to me ).

  1. there is no way to change public/tiddlers/ at the moment :
  • I added this as improvement
    https://github.com/bourgeoa/tiddlywiki-node-solid-server/issues/6 but not sure of the possibility to have more than one destination per solid syncadaptor not breaking the idea of solid.
  • you must remember that solid is mainly for data, with a strict separation between data and apps. The pod owner is in charge of data for privacy and security reasons, apps can be any provider.
  1. You can use as many sub-folders : one for each tiddliwiki implementation if you want

  2. You succeeded to import the tiddlywiki/index.html with solid syncadaptor : I saw it (the rename is a feature of solid dataBrowser)

  3. as fileManager you can try these apps : (work in progress - but really usable)

  1. You must be aware of the following :
  • the pod’s at inrupt.net or solid.community are limited to 25Mb (other provider may allow different amount)
    I suppose it is enough for your experiments
  • if you use a pod at https://solid.community I can repair it being one of the solid.community support team
  1. Not knowing your objectives, nor your possibility, but for information you can create your own pod server instance (I have mine)

nota : breaking a pod may happen when and if you do some developpement (less nowadays)

1 Like

OK @bourgeoa -again you’ve given me some Solid clues to follow, so here’s what i’ve done:

  1. Registered a new Solid server account at: https://refarmer.solid.community (for ease of mutual access) ;
  2. Logged into it using solid-ide ;
  3. Created subfolders of …/tiddlers/main/ (plus a redundant /main subfolder at root, that i can’t figure out how to delete) ;
  4. Uploaded the TiddlyWiki file i want to work on -plain vanilla standard TW5, except with your sync node plugin, (plus the Stroll set that brings some extra editing features) …

And that’s where i hit the wall, in that i get that big red javascript error-banner at what i suppose should be my TiddlyWiki home: https://refarmer.solid.community/public/tiddlers/index.html
If there is anything you might do to fix that, by all means feel free!

FYI bourgeoa : all i’m trying to do here is create a documentation site for technologies that i am trying to learn -including, but not limited to, TiddlyWiki and Solid- initially for an audience of just one: my “future self.” But i’m excited by the promise of Solid to make it possible that i could share bring other users in and share data out with views & privileges scoped as appropriate for different use-cases. Dunno if that will be possible, but the idea of it is exciting enough, i’ll keep plugging away until i hit an impassable wall.

1 Like
  1. to delete a file or a folder you can use :
  1. javascript error : first you should delete index.html and rebuild it, either with :
  • copy/paste
  • or using solid-ide
  1. to do it with solid-ide, you will learn a few things related to solid :
  • inside solid-ide goto source folder of the file you want to copy : https://bourgeoa.solid.community/public/tiddlywiki/
  • select options and log in with the destination webId : https://refarmer.solid.community/profile/card#me
  • click on left icon of index.html : a menu should display
  • select copy file
  • in destination folder : https://refarmer.solid.community/public/tiddlers/
  • in destination file : index.html
  • click on acl options and select exclude acl
  • click on copy. Check that your copy parameters are correct, then OK
  • wait : it will not work. you will receive a 403 error origin is not allowed in destination pod
  • with your browser go to refarmer.solid.community pod, log in, go t to preferences, manage your trusted applications, add https://bourgeoa.github.io , select all access mode, and add
  • go back to solid-ide and redo. You shall have a success message

(in google chrome browser add the dev console (Ctl+Maj+I) to better see what is on-going)

conclusion : I hope you have been able to copy a file without acl (for which you only have read authorization) to a pod where you have write authorization with an authorized app as origin.

Thanks @bourgeoa for this; through it i learned how to access edit features of solid-ide (problem seemed to be my user-level, which i changed thru prefs to “power user” -ha! :-)… And now i have access to delete folders and files, etc.

BUT: i’ve been unable to make the desired change, because when i get to your instruction for managing my index.html file that says "click on acl options and select ‘exclude acl’ ", i have no acl options to edit; what i have at bottom of the edit menu, below the dotted line, are 2 options to either “create file acl” or “delete file acl”.

NB: i have already added https://bourgeoa.github.io to my trusted apps, with all privs; this does not help with the above roadblock.

And i must add: i don’t really understand the logic behind this prescribed sequence of steps. When i copied the index.html file on your pod, the editor asked me for a new name (insisted that i give it one, in fact, to complete the copy operation), so i called it ‘index.html’ , which resulted in my simply copying the file to itself (did in fact get a confirmation from server saying it merged that change).

Then: when i thought i should be pasting this content from your file over the index.html file in my own pod, instead you tell me to execute a ‘copy’ command on my index.html file (just as well, because there does not appear to be any paste command in my view of solid-ide!), which of course results in overwriting your content stored in my clipboard with my own (problematic) content from my own index.html file… So i remain w/ that Javascript error problem, enfin.

I hope this makes sense to you, bourgeoa (that would be one of us, at least!), and you can drop me another clue or few on the path to making this work… Or you can just take my instance and wrestle it into shape, if you prefer (interested as i am to learn this tech, although “school of hard knocks” may be the best way, i’m really keen to have this thing working in my own podspace!)

I suppose you missed part of these steps.

1 Like

YES! That’s got it working. Thanks a heap, @bourgeoa