Merge branch 'readme' of git://github.com/pbondoer/cryptpad into staging
commit
cd3f29c502
133
readme.md
133
readme.md
|
@ -1,114 +1,28 @@
|
|||
[](https://labs.xwiki.com/xwiki/bin/view/Main/WebHome)
|
||||
[](https://labs.xwiki.com/xwiki/bin/view/Main/WebHome)
|
||||
|
||||
<p align="center">
|
||||
<img src="https://github.com/cjdelisle/cryptpad/raw/master/cryptofist.png" width="60%">
|
||||

|
||||
</p>
|
||||
|
||||
Unity is Strength - Collaboration is Key
|
||||
CryptPad is the **Zero Knowledge** realtime collaborative editor.
|
||||
|
||||
|
||||
|
||||

|
||||
|
||||
CryptPad is the **zero knowledge** realtime collaborative editor.
|
||||
Encryption carried out in your web browser protects the data from the server, the cloud
|
||||
and the NSA. This project uses the [CKEditor] Visual Editor and the [ChainPad] realtime
|
||||
engine. The secret key is stored in the URL [fragment identifier] which is never sent to
|
||||
the server but is available to javascript so by sharing the URL, you give authorization
|
||||
to others who want to participate.
|
||||
and the NSA. It relies on the [ChainPad] realtime engine.
|
||||
|
||||
<!--If you'd like to know more, please read [the Whitepaper]().-->
|
||||
|
||||
# Installation
|
||||
|
||||
Cryptpad depends on the Nodejs runtime.
|
||||
We recommend installing it via [NVM](https://github.com/creationix/nvm "Node Version Manager") to ensure that you are running an up to date version.
|
||||
Installing CryptPad is pretty straightforward. You can read all about it in the
|
||||
[installation guide](https://github.com/xwiki-labs/cryptpad/wiki/Installation-guide).
|
||||
|
||||
Once you have a recent runtime (we use v6.6.0):
|
||||
It also contains information on keeping your instance of CryptPad up to date.
|
||||
|
||||
```
|
||||
git clone <this repo>
|
||||
cd cryptpad
|
||||
npm install
|
||||
npm install -g bower ## if necessary
|
||||
bower install
|
||||
## Setup using Docker
|
||||
|
||||
## copy config.example.js to config.js
|
||||
cp config.example.js config.js
|
||||
See [Cryptpad-Docker](docs/cryptpad-docker.md)
|
||||
|
||||
node ./server.js
|
||||
```
|
||||
|
||||
## Configuration
|
||||
|
||||
CryptPad _should_ work with an unmodified configuration file, though there are many things which you may want to customize.
|
||||
Attributes in the config should have comments indicating how they are used.
|
||||
|
||||
```
|
||||
$EDITOR config.js
|
||||
```
|
||||
|
||||
If you are deploying CryptPad in a production environment, we recommend that you take the time to understand and correctly customize your server's [Content Security Policy headers](https://content-security-policy.com/).
|
||||
Modern browsers use these headers to allow or deny actions from malicious clients which could compromise the confidentiality of your user's data.
|
||||
|
||||
These settings can be found in your configuration file in the `contentSecurity` and `padContentSecurity` sections.
|
||||
|
||||
## Maintenance
|
||||
|
||||
Before upgrading your CryptPad instance to the latest version, we recommend that you check what has changed since your last update.
|
||||
You can do so by checking which version you have (see package.json), and comparing it against newer [release notes](https://github.com/xwiki-labs/cryptpad/releases).
|
||||
|
||||
To get access to the most recent codebase:
|
||||
|
||||
```
|
||||
cd /your/cryptpad/instance/location;
|
||||
git pull
|
||||
```
|
||||
|
||||
To update dependencies:
|
||||
|
||||
```
|
||||
# clientside dependencies
|
||||
bower update;
|
||||
|
||||
# serverside dependencies
|
||||
npm update;
|
||||
```
|
||||
## Deleting all data and resetting Cryptpad
|
||||
|
||||
|
||||
To reset your instance of Cryptpad and remove all the data that is being stored:
|
||||
|
||||
**WARNING: This will reset your Cryptpad instance and remove all data**
|
||||
```
|
||||
# change into your cryptpad directory
|
||||
cd /your/cryptpad/instance/location;
|
||||
|
||||
# delete the datastore
|
||||
rm -rf ./datastore
|
||||
```
|
||||
|
||||
If you are using the mongodb adaptor, [drop the relevant collection](https://docs.mongodb.org/manual/reference/method/db.collection.drop/#db.collection.drop).
|
||||
|
||||
If you are using the [leveldb adaptor](https://github.com/xwiki-labs/cryptpad-level-store), delete the datastore directory you have configured.
|
||||
|
||||
## Testing
|
||||
|
||||
To test CryptPad, go to http://your.server:3000/assert/
|
||||
|
||||
You can use WebDriver to run this test automatically by running TestSelenium.js but you will need chromedriver installed.
|
||||
If you use Mac, you can `brew install chromedriver`.
|
||||
|
||||
## Developing CryptPad
|
||||
|
||||
CryptPad is built with a lot of small javascript libraries.
|
||||
To make js files load faster, we apply an aggressive caching policy.
|
||||
|
||||
If you want to add new features to CryptPad, you'll want to turn off caching.
|
||||
You can do so by launching your server in _dev mode_, like so:
|
||||
|
||||
`DEV=1 node server.js`
|
||||
|
||||
## Security
|
||||
# Security
|
||||
|
||||
CryptPad is *private*, not *anonymous*. Privacy protects your data, anonymity protects you.
|
||||
As such, it is possible for a collaborator on the pad to include some silly/ugly/nasty things
|
||||
|
@ -127,11 +41,7 @@ the battery out of your computer before it spawns Agent Smith.
|
|||
|
||||
Still there are other low-lives in the world so using CryptPad over HTTPS is probably a good idea.
|
||||
|
||||
## Setup using Docker
|
||||
|
||||
See [Cryptpad-Docker](docs/cryptpad-docker.md)
|
||||
|
||||
## Translations
|
||||
# Translations
|
||||
|
||||
We'd like to make it easy for more people to use encryption in their routine activities.
|
||||
As such, we've tried to make language-specific parts of CryptPad translatable. If you're
|
||||
|
@ -139,14 +49,14 @@ able to translate CryptPad's interface, and would like to help, please contact u
|
|||
|
||||
You can also see [our translation guide](/customize.dist/translations/README.md).
|
||||
|
||||
## Contacting Us
|
||||
# Contacting Us
|
||||
|
||||
You can reach members of the CryptPad development team on [twitter](https://twitter.com/cryptpad),
|
||||
via our [github issue tracker](https://github.com/xwiki-labs/cryptpad/issues/), on the
|
||||
[freenode](http://webchat.freenode.net/?channels=%23cryptpad&uio=MT1mYWxzZSY5PXRydWUmMTE9Mjg3JjE1PXRydWUe7)
|
||||
irc network, or by [email](mailto:research@xwiki.com).
|
||||
You can reach members of the CryptPad development team on [Twitter](https://twitter.com/cryptpad),
|
||||
via our [GitHub issue tracker](https://github.com/xwiki-labs/cryptpad/issues/), on our
|
||||
[Matrix channel](https://riot.im/app/#/room/#cryptpad:matrix.org), or by
|
||||
[e-mail](mailto:research@xwiki.com).
|
||||
|
||||
## Contributing
|
||||
# Contributing
|
||||
|
||||
We love Open Source and we love contribution. It is our intent to keep this project available
|
||||
under the AGPL license forever but in order to finance more development on this and other FOSS
|
||||
|
@ -156,7 +66,9 @@ please read and
|
|||
|
||||
If you have any questions or comments, or if you're interested in contributing to Cryptpad, come say hi on IRC, `#cryptpad` on Freenode.
|
||||
|
||||
### License
|
||||
# License
|
||||
|
||||

|
||||
|
||||
This software is and will always be available under the GNU Affero General Public License as
|
||||
published by the Free Software Foundation, either version 3 of the License, or (at your option)
|
||||
|
@ -164,7 +76,4 @@ any later version. If you wish to use this technology in a proprietary product,
|
|||
sales@xwiki.com
|
||||
|
||||
[ChainPad]: https://github.com/xwiki-contrib/chainpad
|
||||
[CKEditor]: http://ckeditor.com/
|
||||
[fragment identifier]: https://en.wikipedia.org/wiki/Fragment_identifier
|
||||
[active attack]: https://en.wikipedia.org/wiki/Attack_(computing)#Types_of_attacks
|
||||
[Creative Commons Attribution 2.5 License]: http://creativecommons.org/licenses/by/2.5/
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 410 KiB |
Loading…
Reference in New Issue