Sphinx扩展,将Sphinx网站转换为渐进式网络应用
项目描述
sphinxext-pwa
🛑 停止 🛑
这项技术高度实验性和易变。使用此扩展的个人应预期以下情况
- 完全随机的故障
- 过度使用数据
- 过度消耗电池电量
- 完全破坏您的sphinx网站
当前问题
- iOS仅部分工作
- 由于某些奇怪的原因,服务工作者被终止且无法持续重新激活。
有关更多信息,请参阅问题。
简介
渐进式网络应用,也称为PWA,是一种出色的技术,它使网站与移动设备之间的无缝集成成为可能。它赋予了网站以原生应用的方式呈现自己的能力;包括通知和离线支持。此扩展的目标是实现Sphinx和PWA之间尽可能接近的集成。
安装
安装很简单,但有几点需要注意。
首先,您需要将此依赖项添加到conf.py
中的extensions
列表中。
extensions = [
"sphinxext.pwa",
]
此扩展将自动为需要用于 PWAs 的 manifest
预填充数据。但是,设置图标是强制性的。《code>pwa_icons 是一个配置变量,它接受一个数组列表。嵌套数组必须将索引 0
作为图标的目录。第二个 1
索引必须是该图标大小的字符串列表。
重要:图标必须放置在 root 的 _static
目录中。子目录 将不起作用。
pwa_icons = [["_static/myicon.webp", "48x48"]]
此扩展需要 NodeJS >= 16。如果您在 ReadTheDocs 上部署,您需要添加或自定义如所示构建配置 这里。完成此操作后,这应该足以将您的 Sphinx 网站转换为渐进式网络应用!
配置
PWAs 有很多配置。有关接受输入的详细信息,请参阅 Mozilla 文档。仅公开了一小部分选项。以下是一些公开的 manifest 选项。
注意:这些选项的无效输入可能会破坏 PWA 并难以调试。
配置 | 默认值 | 类型 |
---|---|---|
pwa_name |
conf.py 中的 project 变量 |
字符串 |
pwa_short_name |
None | 字符串 |
pwa_theme_color |
None | 包含 HEX 颜色代码的字符串 |
pwa_display |
"standalone" | 字符串 |
pwa_icons |
强制性的 | [["图像位置", "大小"]] |
pwa_online_only |
False | 布尔值 |
注意事项
支持的浏览器:Chrome(桌面和移动),Firefox(移动),Safari(iOS)。仅支持这些浏览器的标准、非测试版和非轻量版。
支持的操作系统:Android >= 6。iOS >= 14.2
离线工作安装时间:取决于网站,但一个 160MB 的应用程序平均需要 15 分钟才能启用离线支持。这还取决于特定设备的实现。
缓存超时:每次用户清除浏览器缓存时,都会清除资源。目前尚不清楚是否会重新触发整个缓存的下载。一些用户可能使用节省空间的程序,这可能会干扰此过程。
项目详情
sphinxext-pwa-0.0.3a0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | cdfb5f5d17d3f5ad442d2008f41320d265aabcb0a668c6d7d906da9861e4544d |
|
MD5 | 557151ef73a91a29481df672e93d5ec8 |
|
BLAKE2b-256 | b2f16f092f086b35eccb6876df98d91f93521101d4259275162930cdb78db4ca |