Skip to content

About

🔐 Server API to support End-to-End Encryption

Topics

Resources

Contributing

Security policy

Stars

324 stars

Watchers

12 watching

Forks

Latest commit

 

History

3,037 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

End-to-End Encryption App

REUSE status

This app provides all the necessary APIs to implement End-to-End encryption on the client side and in the browser.

Encrypted folder in the Nextcloud web interface

Table of contents

Documentation

User documentation

How to set up end-to-end encryption in your clients, encrypt folders, use the personal settings and troubleshoot common issues is described in the user documentation.

Administrator documentation

How to install and configure the app, handle the deprecation of legacy v1 metadata and use the OCC commands is described in the administrator documentation. Security relevant actions recorded in the audit log are listed in the audit log actions documentation.

Client API

Here you can find the API documentation. Also some typical client operations and how to use the API to perform them are documented too.

Specification (RFC)

The end-to-end encryption implemented by the Nextcloud sync and mobile clients, as well as the functionality provided by this app to facilitate it, is based on the approach documented in the RFC repository.

Development

There are many ways to contribute, of which development is only one! Find out how to get involved, including as a translator, designer, tester, helping others, and much more! 😍

Specific to this app we summarize the basic steps how to get involved below.

Building the app

This is is built using PHP on the backend side as well as Typescript and Vue.js on the frontend side. For building the frontend you need to install the currently active Node.js version (see engines in the package.json). To built the app from a fresh checkout of the repository run:

  1. npm ci to install the frontend dependencies
  2. npm run build to build the frontend

When developing there are some more commands which might be useful for you:

  • npm run dev to build the frontend in development mode enabling support for the Vue devtools.
  • npm run watch similar to dev but rebuilds as soon as there are code changes in the sources.
  • npm run lint to check for linting issues (e.g. code style). Always check this before contributing code.
  • npm run stylelint similar as lint but for the <style> section of our Vue files.
  • npm run test to run our frontend unit tests.

Contributing

Contribution guidelines

All contributions to this repository are considered to be licensed under the AGPLv3 or any later version.

Nextcloud doesn't require a CLA (Contributor License Agreement). The copyright belongs to all the individual contributors. Therefore we recommend that every contributor adds the following line to the AUTHORS file if they made substantial changes to the code:

- <your name> <your email address>

We can only accept contributions from authors that agree on the Developer Certificate of Origin! For this please make sure to sign-off your commits if you want to contribute code (git commit -s).

Please read the Code of Conduct. This document offers some guidance to ensure Nextcloud participants can cooperate effectively in a positive and inspiring atmosphere and to explain how together we can strengthen and support each other.

Stable branches

Before Nextcloud 33 each we published one app version per Nextcloud version and maintained a branch per Nextcloud versions like stable32 for Nextcloud 32.

Since Nextcloud 33 we switched to a versions based branch process, where we will keep support of multiple Nextcloud versions within a single app version. So the new naming schema is e.g. stable-2 for the v2.x series of this app.

About

🔐 Server API to support End-to-End Encryption

Topics

Resources

Contributing

Security policy

Stars

324 stars

Watchers

12 watching

Forks

Releases

Packages

Used by

Contributors

Languages