ChenglongMa / zotero-plugins

Zotero Plugins Collection | Zotero 插件合集 | Awesome Zotero Plugins

Home Page:https://plugins.zotero-chinese.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Zotero 插件合集

GitHub 自动构建状态 Netlify 部署状态 GitHub 最后更新时间 最后更新

🇨🇳 本仓库提供了若干 Zotero 插件的信息及其 XPI 包,尝试在 Zotero 官方插件商店建立前,提供集中的插件商店服务。

🇬🇧 This repository provides information of several Zotero plugins and their XPI packages , in an attempt to provide a centralized plugin store service until the official Zotero plugin store is ready.

访问

贡献

插件信息

插件信息保存在 src/plugins.ts,数据格式如下:

interface PluginInfo {
  /**
   * 插件名称
   */
  name: string;
  /**
   * 插件仓库
   *
   * 例如:northword/zotero-format-metadata
   *
   * 注意前后均无 `/`
   */
  repo: string;
  /**
   * 插件的发布地址信息
   */
  releases: Array<{
    /**
     * 当前发布版对应的 Zotero 版本
     */
    targetZoteroVersion: string;
    /**
     * 当前发布版对应的下载通道
     *
     * `latest`:最新正式发布;
     * `pre`:最新预发布;
     * `string`:发布对应的 `git.tag_name`;
     * 注意 `git.tag_name` 有的有 `v` 而有的没有,可以通过发布链接来判断
     */
    tagName: "latest" | "pre" | string;
  }>;
}

对于每一个插件,只有必填项需要填写在 src/plugins.ts 中,其余字段脚本运行时可以获取。

Note

如何添加未收录的插件?

编辑 src/plugins.ts,在 plugins 列表中添加一个对象,内容如上所示,已有的内容亦可作为参考。

编辑完成后提交,发起 Pull Request,仓库成员将尽快处理。

构建过程

src/index.ts 为主要逻辑脚本,它执行如下操作:

GitHub Action Bot 定时运行 src/index.ts 脚本,执行上述步骤,并将 docs/dist 部署到 gh-page 分支。

Note

如何将本项目作为依赖项进行二次开发?

开发者可以使用 gh-pages 分支中 dist/plugins.json 等构建文件。

开发

根据 GitHub 文档 创建 GitHub 个人访问令牌,将其存入本地环境变量 GITHUB_TOKEN

# 克隆仓库
git clone https://github.com/northword/zotero-plugins.git zotero-plugins
cd zotero-plugins

# 安装依赖
npm install

# 运行构建脚本
npm run get-info

# 启动网页服务器
npm run website

# 插件排行榜图表页面
npm run get-chart

致谢

感谢 Zotero 社区及开发者们的付出!

本项目使用了如下代理或公共 CDN 服务完成 XPI 分发:

本项目是对 l0o0/ZoteroPlugins 的 Typescript 重新实现。

本项目部署在 GitHub Pages 和 Netlify.

netlify

贡献者

本项目贡献者

协议

MIT License

Star History

Star History Chart

About

Zotero Plugins Collection | Zotero 插件合集 | Awesome Zotero Plugins

https://plugins.zotero-chinese.com

License:MIT License


Languages

Language:TypeScript 100.0%