/integrations-api

API for optional services, such as system keychain integrations

Primary LanguageJavaGNU Affero General Public License v3.0AGPL-3.0

Cryptomator Integrations API

This library defines the API of various integrations used by Cryptomator. The implementations are then loaded during runtime via the ServiceLoader API.

To add an integration to Cryptomator, simply create a library, implement the provider interface you're interested in, add your implementation's fully qualified class name to the provider configuration file and publish your library as a jar.

For example let's say you want to add a new keychain integration. You just need these three steps:

  1. Create a class, e.g. com.example.mycryptomatorplugin.PwManager3000Integration which extends org.cryptomator.integrations.keychain.KeychainAccessProvider and implement the methods according to the interface.
  2. Create a provider configuration file at META-INF/services/org.cryptomator.integrations.keychain.KeychainAccessProvider and add your implementation (com.example.mycryptomatorplugin.PwManager3000Integration)
  3. Publish your library as a jar file and include it to Cryptomator's class path at runtime (PRs are welcome)

Implementations of the Integrations API can be found here: