Hi Jeremy,
Thanks for your warm welcome.

Le mardi 20 août 2019 14:26:32 UTC+5:30, Jeremy Ruston a écrit :
>
> Hi Xavier
>
> I'm quite new @ TiddlyWiki and I need some guidance.
>
>
> Welcome to the project!
>
> I try to develop a new plugin to store tiddlers on IPFS.
> I hardly studied a few SyncAdaptor implementation but I'm lost :
> - https://github.com/wshallum/couchadaptor
> - https://github.com/linonetwo/solid-tiddlywiki-syncadaptor
> - https://github.com/fiatjaf/tiddlywiki-remotestorage
> - https://github.com/bourgeoa/tiddlywiki-node-solid-server
> Here is what I want to achieve :
> - load a plain tiddlywiki (I'm planning to offer my users a set of 
> predefined wikis, probably on IPFS but self-contained)
>
>
> The general approach taken by the sync mechanism has two parts:
>
> * A means to construct a TW5 HTML file from the constituent tiddler files
> * A mechanism to sync individual tiddler changes from that HTML file back 
> to the server
>
> It is orthogonal to the saver mechanism which is concerned with saving the 
> entire HTML file as a single file.
>
> The two mechanisms are pretty much independent: one can be syncing 
> individual tiddlers to a server and then simultaneously use the saver 
> mechanism to save a snapshot of the entire wiki.
>

If I understand correctly. The save button call a saver (are the savers 
chained in case of multiple setup, eg gitub, gitlab...? ) while the 
syncadaptor is dynamic and reacts to events ? If its correct I like the 
mechanism as it gives users a way to easily backup their wikis.
 

>
> One crucial difference is that the syncer mechanism requires an external 
> process to build the HTML file. That is done dynamically in the default 
> client server configuration: the route `/` triggers a build of the entire 
> wiki. It can also be done by an external build process that periodically 
> rebuilds the HTML file.
>

I'm not sure to understand here. I think this is why I'm lost. While 
studying the syncadaptor I didn't get any understanding about how the 
remote stored wiki has been initialized in the first place and this is why 
I was thinking about my described mechanism. Load a self contained wiki. 
Setup the ipfs target and then use the syncadaptor to push the contents to 
IPFS.
 

>
> - the plugin is loaded but should be inert until the first save to the 
> appropriate server. The first save should analyse the content and upload 
> the content to IPFS.
> Each tiddlers in a separate file, especially for external attached file. 
> Maybe the first step is to have a self contained file ??
>
>
> IPFS is static storage so yes, I think it would be much easier to focus on 
> the single file configuration.
>

I think this is where I'm going to start. Define a saver and save the whole 
content. I was too ambitious to jump right away on a SyncAdaptor. There is 
always a learning curve...
 

>
> Question :
> - how do I detect that the wiki is not fully IPFSified yet ? probably a 
> property, but where ?)
>
>
> I'm not sure what you mean here?
>

I was following my idea. All the syncadaptors I studied assume that the 
content is already on a remote server and I didn't see how the content has 
been built in the first place. You explained earlier the external build 
process but I still don't understand how the first load is working. If I 
follow your mind It means that let's say you offer your user to start from 
a set of wiki templates. Those templates are already built by an external 
process. I was thinking like described. Load a plain wiki, install the 
plugin, setup the plugin then sync to IPFS. The property was meant to 
detect whether or not this wiki is already synced. I was looking to some 
index technics but I didn't figure out yet how to get and process the store 
list.
 

>
> - how to I bypass the SyncAdaptor (inert) during the first load ?
>
>
> When it starts up, the sync adaptor should interrogate the server to 
> obtain any tiddlers that have been updated since the HTML file was built.
>

Not sure to understand what you mean by updated. I'm targeting a single 
user model. The only updates should come from the user actions. (updated 
tiddlers, removed tiddlers,etc...) 
 

>
> - It is not clear yet how savers and syncadaptors are processed :
> Let's say that you setup a github account and you have also the IPFS 
> syncadaptor.
> Who's winning, the saver or the SyncAdaptor.
> A lot of questions I agree. I hope that my questions make sense and are 
> clear.
> Thanks
>
>
> No problem, I hope my brief answers help, please don't hesitate to ask 
> followups. These kinds of discussions can be helpful for observers, too.
>
> Best wishes
>
> Jeremy
>

Many thanks for your great work.

Warmly.
 

>
> -- 
> You received this message because you are subscribed to the Google Groups 
> "TiddlyWikiDev" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected] <javascript:>.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/tiddlywikidev/004560cd-7acf-4408-a3b2-63e049db291a%40googlegroups.com
>  
> <https://groups.google.com/d/msgid/tiddlywikidev/004560cd-7acf-4408-a3b2-63e049db291a%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"TiddlyWikiDev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tiddlywikidev/b59dab66-8c82-4739-acd2-cc2a714f5e5f%40googlegroups.com.

Reply via email to