Announcement a new plugin - splitweb

137 views
Skip to first unread message

ILYA Khlopotov

unread,
Dec 25, 2019, 5:26:50 AM12/25/19
to TiddlyWiki
Hello,

The splitweb plugin is a custom sync adapter which allows the designer to create a read-only versions of the wiki and host them on any generic web server (for example github pages).
The web server doesn't need to have any backend language. The plugin works by employing a lazy  loading mechanism available in tiddlywiki.

In a nutshell the directory structure on the web server is the same as in nodejs based installation with one exception. There is a tiddlers.json file at the root of the directory. The file contains all information about the tiddler except its text. The file is using the following format (see here https://iilyak.github.io/tiddlywiki-splitweb/tiddlers.json): 
```
[
    {
        "title": "bar",
        "created": "20191128223719980",
        "modified": "20191128223730628",
        "tags": [
            "css",
            "example"
        ],
        "type": "text/vnd.tiddlywiki",
        "fields": {
            "author": "@iilyak"
        },
        "filepath": "tiddlers/bar.tid"
    },
    {
        "title": "foo",
        "created": "20191128223719980",
        "modified": "20191128223730628",
        "tags": [
            "www",
            "example"
        ],
        "type": "text/vnd.tiddlywiki",
        "fields": {
            "date": "2019-12-17"
        },
        "filepath": "tiddlers/foo.tid"
    }
]
```

The source code of the plugin is available here https://github.com/iilyak/tiddlywiki-splitweb
The demo is located on github pages based hosting here https://iilyak.github.io/tiddlywiki-splitweb/

This is my first finished plugin for tiddlywiki. One of the goals for this plugin was to test the plugin translation mechanism. So far documentation and UI of the plugin available in two languages English and Russian. The language can be changed using a corresponding button on the demo page.

WARNING: This is Alpha version and should be used carefully.

# ROADMAP

- testing
- more documentation
- more translations
- configurable split filter

Best regards,
iilyak

TonyM

unread,
Dec 25, 2019, 10:36:58 AM12/25/19
to TiddlyWiki
Iilyak,

Thanks so much contributing what sounds like a somewhat revolutionary implementation. I will review it with glee in coming weeks.

Tony

Mohammad

unread,
Dec 25, 2019, 12:33:58 PM12/25/19
to TiddlyWiki
Many Thanks iilyak,
This is a great addition! 

Question:
 1. does saving on Github page require token? there is Github saver tab in $:/Control
 
Looking forward for more examples and improved documentation.

--Mohammad

ILYA

unread,
Dec 25, 2019, 11:01:27 PM12/25/19
to Mohammad, TiddlyWiki
>  1. does saving on Github page require token? there is Github saver tab in $:/Control

The splitweb is intended for read-only wiki on generic web hosting platforms without backend languages. Therefore the plugin itself doesn't have any github specifics. The github pages are only mentioned because they were used for the demo.

My intended use for this plugin is creation of web sites and hosting them using CDN. I.e. environment where there is no place for nodejs.

My plan is to create a web site edition. The requirements are:
1. no backend
2. tiddlywiki + plugins in one bundle
3. tiddlers in separate files
4. fully functional javascript frontend
5. google crawler friendly design
- how?

This plugin solves 1-4. The remaining part is 5.

Roadblocks

- I would need to be able to include tiddlywiki code and core tiddlers from arbitrary html files.
- splitting tw to be a library (I know it was done before but I don't want to use fork)
- custom template for static tiddler (I am thinking to trigger automatic redirect to /index.html#tiddler)

Best regards,
iilyak
--
Sent from my Android device with K-9 Mail. Please excuse my brevity.

Mohammad

unread,
Dec 26, 2019, 12:40:09 AM12/26/19
to TiddlyWiki
Hi iilyak,
 
Great! so this will let us to create web pages from individual tiddlers bundle on a server.
Thank you for clarification.
 
--Mohammad


On Thursday, December 26, 2019 at 7:31:27 AM UTC+3:30, ILYA wrote:
>  1. does saving on Github page require token? there is Github saver tab in $:/Control

The splitweb is intended for read-only wiki on generic web hosting platforms without backend languages. Therefore the plugin itself doesn't have any github specifics. The github pages are only mentioned because they were used for the demo.

My intended use for this plugin is creation of web sites and hosting them using CDN. I.e. environment where there is no place for nodejs.

My plan is to create a web site edition. The requirements are:
1. no backend
2. tiddlywiki + plugins in one bundle
3. tiddlers in separate files
4. fully functional javascript frontend
5. google crawler friendly design
- how?

This plugin solves 1-4. The remaining part is 5.

Roadblocks

- I would need to be able to include tiddlywiki code and core tiddlers from arbitrary html files.
- splitting tw to be a library (I know it was done before but I don't want to use fork)
- custom template for static tiddler (I am thinking to trigger automatic redirect to /index.html#tiddler)

Best regards,
iilyak


Reply all
Reply to author
Forward
0 new messages