5 <meta name=
"viewport" content=
"width=device-width, initial-scale=1" />
7 <link rel=
"stylesheet" href=
"../style.css#" type=
"text/css" />
8 <title>Offline resources
</title>
9 <script type=
"text/javascript">
11 let href
= location
.href
;
12 for(let i
=href
.length
-1;i
>0;i
--){
13 if('/'==href
.charAt(i
) && '/'==href
.charAt(i
-3))
20 location
.href
= location
.href
.substring(0,i
+1)+page
;
22 function nav2Lang(lang
){
24 let href
= location
.href
;
25 location
.href
= location
.href
.substring(0,i
-2)+lang
+location
.href
.substring(i
);
30 <header class='header'
>
31 <a class=
"logo" href=
"javascript:void(0)" onclick=
"return nav2('index.html#')">Home
</a> <a class=
"logo" href=
"javascript:void(0)" onclick=
"return nav2('tags/index.html#')">Tags
</a>
34 <a class=
"logo" href=
"javascript:void(0)" onclick=
"return nav2Lang('zh')">简体中文
</a>
42 <div class=
"container">
43 <h1 class=
"title">Offline resources
45 <span class=
"subtitle"></span>
50 <p>Offline resources locate in the folder
"sitecache
". With the option
"use offline resources
" enabled, the corresponding files in
"sitecache/[domain name]/[full path including filename, the url path part]
" are loaded first before reaching the network.
</p>
51 <h4 id=
"bingchat-ui">bingChat UI
</h4>
52 <p><a href=
"i:0hsitecache/www.bing.com/ai.html:../searchurl/bingAI/bing.html">Install bingChat UI ai.html for censored area
</a> (
<a href=
"https://www.bing.com/ai.html">bingChat UI
</a>)
</p>
53 <p><a href=
"i:0hsitecache/www.bing.com/write.html:../searchurl/bingAI/write.html">Install bingWrite UI write.html for censored area
</a> (
<a href=
"https://www.bing.com/write.html">bingWrite
</a>)
</p>
54 <p><a href=
"i:0hsitecache/www.bing.com/draw.html:../searchurl/bingAI/draw.html">Install bingAI image creator UI draw.html for censored area
</a> (
<a href=
"https://www.bing.com/draw.html">bingAI image creator
</a>)
</p>
55 <h4 id=
"serverless-local-sites">Serverless local sites
</h4>
56 <p><a href=
"i:01Extract webapp:i:0bsitecache/local/:">Click to install url service that extracts web apps to the folder
"sitecache/local/
"</a>: support web extensions (.crx for chrome
& .xpi for firefox).
</p>
57 <p>Any folder under
"sitecache
" can be visited as a local site. Urls with search queries can be dynamically processed by the js/wasm code in the local file.
</p>
58 <p>PWAs (Progresssive Web Applications) and some web extensions (.crx for chrome
& .xpi for firefox) are just packaged websites. Ex. the
"kiwix
" extension can be extracted to the folder
"sitecache/local/kiwix
"<sup id=
"fnref:1"><a href=
"#fn:1" class=
"footnote-ref" role=
"doc-noteref">1</a></sup>, then the kiwix extension can be accessed via url
"https://local/kiwix/www/index.html#
" in the browser.
</p>
59 <div class=
"footnotes" role=
"doc-endnotes">
63 <p>the folder name
"local
" is used as the domain name in the url.
 <a href=
"#fnref:1" class=
"footnote-backref" role=
"doc-backlink">↩︎</a></p>
69 <p>Last Modified:
2 April
2024<br>
70 add js function in README
<br>
75 src='https://giscus.app/client.js'
76 data-repo=
"torappinfo/uweb"
77 data-repo-id=
"MDEwOlJlcG9zaXRvcnkzMDIyMDU3MjE="
78 data-category=
"Announcements"
79 data-category-id=
"DIC_kwDOEgNLGc4CQjsh"
82 data-reactions-enabled=
"1"
83 data-emit-metadata=
"0"
84 data-input-position=
"top"
88 crossorigin=
"anonymous" async
>
91 <footer class=
"site-footer">
92 <div class=
"container">
93 © 2018-
2024 Richard H. Cao
96 <!-- This document is licensed under the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is available at <https://www.gnu.org/licenses/>. -->