Note: this is not fully baked yet
I’ve created a background diagram on apps and the user file system – comments are enabled, also embedded below:
This is a continuation talking about how to structure a TiddlyWiki app, saver, syncer, etc..
I think this is how this can work today. I am handwaving over syncer vs saver. @Jermolene can you explain the difference between the two approaches?
Note: Fission saver / syncer in core – so TWs wherever they are deployed in the world can save / sync back to Fission – is a topic that should get handled separately.
Users visit the TiddlyWiki app on Fission. This is statically published, and we can include whatever setup / default tiddlers / etc. we want with it. It has the Fission saver / syncer included with it.
The landing page displays a TW and describes what it is, and has a big “Sign in with Fission” button. The user signs in / grants permission to the app to write to their file system,
The app is like TiddlyDesktop – the next step is to launch or create a new TW.
The user chooses “new private” → a new TW is created in
/private/Apps/Jermolene/TiddlyWiki/[NewPrivate]/index.html. The user visits
TW.fission.app and launches into their private TW whenever they like. It is only visible to them and only when they are logged in. It is available on other devices and synced there when they are logged in. Saves are written directly to that file path by the saver.
The user chooses “new public” → a new Fission app is created / published on behalf of the current user. We can have them choose a type of public TW edition, pick a subdomain, fill out a name, whatever we want to gather. Then,
mynewtw.fission.app is created, we check DNS until it exists, and then present the link to the user.
The user visits MyNewTW, is prompted for permission, and is asked for access to their public tree,
/public/TiddlyWiki/MyNewTW. They are logged in, the saver / syncer is pre-configured by the new app launch to write to user Bob’s public path. Bob, being logged in, can write to their own public path – “saving” the entire
index.html or syncing tiddlers.
Alice, another user, visits the public TW at
mynewtw.fission.app, and can browse it, but edits aren’t saved. Future opportunity for App Cloning, if TW owner has this enabled.
Bob can go back to the main TW app on Fission, which keeps track of all the private and public TWs that Bob owns. Different Editions live at the main TW app, and it’s also the main hub where Private TWs are accessed and edited.
We can maintain the TW “Desktop” app as a community github repo. We’ll use a maintainer process of including different Editions, plugins, run updates, and so on, which get deployed.