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.
