Skip to content

nutstore/zotero-plugin-nutstore

Repository files navigation

Nutstore Zotero Plugin

zotero target version Using Zotero Plugin Template

This is a Zotero plugin for Nutstore.

🤔 What can it do?

  • One-click login to nutstore no longer requires cumbersome webdav configuration
  • Enhanced webdav with Nutstore desktop client (Avoid the issues caused by directly using Nutstore webdav.)

📦 Install Guide

  • Download the plugin (.xpi file) from below.

    Note: If you're using Firefox as your browser, right-click the .xpi and select "Save As.."

  • In Zotero click Tools in the top menu bar and then click Plugins

  • Go to the Extensions page and then click the gear icon in the top right.

  • Select Install Add-on from file.

  • Browse to where you downloaded the .xpi file and select it.

  • Finish!

📖 User Manual

1. Login to Nutstore to help you configure Zotero Sync

  • Click the login button in the plugin perference panel.
  • In the popped-up web page, log in to Nutstore account.
  • Then click open Zotero on the web page.
  • Done! Now your Zotero will use Nutstore service for file synchronization.

2. Enhanced Webdav

Note: This feature is only available for Windows now.

🛠️ Development

Please see zotero-plugin-template.

Directory Structure

This section shows the directory structure of a template.

  • All .js/.ts code files are in ./src;
  • Addon config files: ./addon/manifest.json;
  • UI files: ./addon/content/*.xhtml.
  • Locale files: ./addon/locale/**/*.flt;
  • Preferences file: ./addon/prefs.js;
.
|-- .github/                  # github conf
|-- .vscode/                  # vscode conf
|-- addon                     # static files
|   |-- bootstrap.js
|   |-- content
|   |   |-- icons
|   |   |   |-- favicon.png
|   |   |   `-- favicon@0.5x.png
|   |   |-- preferences.xhtml
|   |   `-- zoteroPane.css
|   |-- locale
|   |   |-- en-US
|   |   |   |-- addon.ftl
|   |   |   |-- mainWindow.ftl
|   |   |   `-- preferences.ftl
|   |   `-- zh-CN
|   |       |-- addon.ftl
|   |       |-- mainWindow.ftl
|   |       `-- preferences.ftl
|   |-- manifest.json
|   `-- prefs.js
|-- build                         # build dir
|-- node_modules
|-- src                           # source code of scripts
|   |-- addon.ts                  # base class
|   |-- hooks.ts                  # lifecycle hooks
|   |-- index.ts                  # main entry
|   |-- modules                   # sub modules
|   |   |-- examples.ts
|   |   `-- preferenceScript.ts
|   `-- utils                 # utilities
|       |-- locale.ts
|       |-- prefs.ts
|       |-- wait.ts
|       |-- window.ts
|       `-- ztoolkit.ts
|-- typings                   # ts typings
|   `-- global.d.ts

|-- .env                      # enviroment config (do not check into repo)
|-- .env.example              # template of enviroment config, https://github.com/northword/zotero-plugin-scaffold
|-- .gitignore                # git conf
|-- .gitattributes            # git conf
|-- eslint.config.mjs         # eslint conf, https://eslint.org/
|-- LICENSE
|-- package-lock.json
|-- package.json
|-- tsconfig.json             # typescript conf, https://code.visualstudio.com/docs/languages/jsconfig
|-- README.md
`-- zotero-plugin.config.ts   # scaffold conf, https://github.com/northword/zotero-plugin-scaffold

Disclaimer

Use this code under AGPL. No warranties are provided. Keep the laws of your locality in mind!

If you want to change the license, please contact us.

About

Nutstore sso plugin for Zotero

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors