Nodejs on android11. plugin(s) required for client-server operation are missing."$:/plugins/tiddlywiki/filesystem","$:/plugins/tiddlywiki/tiddlyweb"

…/0/tiddlywiki-x2 $ tiddlywiki Hydrowood’s Wiki --listen
Warning: Plugin(s) required for client-server operation are missing."$:/plugins/tiddlywiki/filesystem","$:/plugins/tiddlywiki/tiddlyweb" serving on http://127.0.0.1:8080

I use Syncthing sync the origin wiki folder from my win11. The origin folder works well on my pc. But after I did all the necessary npm installs, I was failed to use the all saving function on mobilephone but only could save a whole HTML file.
Can I import missing npm dependencies manually from explorer without rooting android? I can’t find neither /data/data/com.termux/files/usr/lib/node_modules nor /storage/emulated/0/Android/data/com.termux/files/usr/lib/node_modules on my phone.

all code in tiddlywiki.info is as below.

 {
   "description": "Basic client-server edition",
   "plugins": [],
   "themes": [],
   "languages": [],
   "build": {
     "index": [
       "--rendertiddler",
       "$:/plugins/tiddlywiki/tiddlyweb/save/offline",
       "index.html",
       "text/plain"
     ],
     "externalimages": [
       "--setfield",
       "[is[binary]] [type[application/msword]]",
       "_canonical_uri",
       "$:/core/templates/canonical-uri-external-image",
       "text/plain",
       "--setfield",
       "[is[binary]] [type[application/msword]]",
       "text",
       "",
       "text/plain",
       "--rendertiddler",
       "$:/core/save/all-external-js",
       "index.html",
       "text/plain"
     ],
     "readonlyexternalimages": [
       "--setfield",
       "[is[binary]] [type[application/msword]]",
       "_canonical_uri",
       "$:/core/templates/canonical-uri-external-image",
       "text/plain",
       "--setfield",
       "[is[binary]] [type[application/msword]] [type[application/pdf]] [[$:/plugins/tiddlywiki/filesystem]] [[$:/plugins/tiddlywiki/tiddlyweb]] [[$:/plugins/twcloud/tiddlyweb-sse]] [[$:/plugins/linonetwo/source-control-management]] [[$:/plugins/linonetwo/super-tag]] [[$:/plugins/linonetwo/flow-chart]] [[$:/plugins/linonetwo/slate-write]] [[$:/plugins/linonetwo/smart-field]] [[$:/plugins/linonetwo/markdown-transformer]] [[$:/plugins/gt6796c/mermaid-tw5]] [[$:/plugins/linonetwo/tw-mobile-sync]] [[$:/plugins/linonetwo/zx-script]] [[$:/plugins/tiddlywiki/highlight]] [prefix[$:/plugins/tiddlywiki/codemirror]] [[$:/plugins/Gk0Wk/TW5-CodeMirror-Enhanced]] [[$:/plugins/flibbles/relink]] [[$:/plugins/kookma/commander]] [[$:/plugins/kookma/section]] [[$:/plugins/linonetwo/calendar]] [[$:/plugins/linonetwo/pinyin-fuzzy-search]]",
       "text",
       "",
       "text/plain",
       "--rendertiddler",
       "$:/core/save/all-external-js",
       "index.html",
       "text/plain"
     ],
     "externaljs": [
       "--rendertiddler",
       "$:/core/templates/tiddlywiki5.js",
       "tiddlywiki5.js",
       "text/plain"
     ]
   }
 }

Welcome to the TiddlyWiki talk forum, HydroWood!

I don’t know about the node module dependencies. It would be just like android to hide them somewhere that you can’t access.

But the error message you are getting suggests your tiddlywiki.info is missing plugins for client-server. Where it says

"plugins" : []

It should have, at a minimum:

   "plugins": [
        "tiddlywiki/tiddlyweb",
        "tiddlywiki/filesystem"
    ],

If if works on Windows, then somehow it must not be syncing your tiddlywiki.info file. Take a look at what the tiddlywiki.info file says on your windows system.

It works on Windows because I did find the “tiddlyweb” in
“C:\Users\22427\AppData\Local\tidgi\app-0.8.1-prerelease6\resources\node_modules@tiddlygit\tiddlywiki\plugins\tiddlywiki\tiddlyweb” on my PC. But Syncthing can only sync folder like “C:\Users\22427\OneDrive\Documents\TiddlyWiki” to my Andriod. The npm packages’ different installations are the problem, but I can’t find a solution.

PS: I runed “npm install -g tiddlywiki@5.3.0” and then “npm install -g @tiddlygit/tiddlywiki@5.3.0-prerelease-2023-06-30”

You need to edit your tiddlywiki.info file to include the plugins I mentioned above. It appears that you initiated an “empty” edition, which does not specify the server components. You should have initiated a “server” edition. I know, the documents don’t make this clear.

You don’t want Syncthing to synchronize your node modules. The two directories will use different compiled binaries.

Since you are able to run tiddlywiki on android, all the node modules you need are (probably) there. But the tiddlywiki.info file needs to be configured to access them.

It’s solved by your method. Thanks a lot!!!