Improve README
This commit is contained in:
parent
777dea2014
commit
c26350c057
122
readme.md
122
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">
|
<p align="center">
|
||||||
<img src="https://github.com/cjdelisle/cryptpad/raw/master/cryptofist.png" width="60%">
|

|
||||||
</p>
|
</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
|
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
|
and the NSA. It relies on the [ChainPad] realtime engine.
|
||||||
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.
|
|
||||||
|
|
||||||
|
<!--If you'd like to know more, please read [the Whitepaper]().-->
|
||||||
|
|
||||||
# Installation
|
# Installation
|
||||||
|
|
||||||
Cryptpad depends on the Nodejs runtime.
|
Installing CryptPad is pretty straightforward. You can read all about it in the
|
||||||
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.
|
[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.
|
||||||
|
|
||||||
```
|
## Setup using Docker
|
||||||
git clone <this repo>
|
|
||||||
cd cryptpad
|
|
||||||
npm install
|
|
||||||
npm install -g bower ## if necessary
|
|
||||||
bower install
|
|
||||||
|
|
||||||
## copy config.example.js to config.js
|
See [Cryptpad-Docker](docs/cryptpad-docker.md)
|
||||||
cp config.example.js config.js
|
|
||||||
|
|
||||||
node ./server.js
|
# Security
|
||||||
```
|
|
||||||
|
|
||||||
## 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
|
|
||||||
|
|
||||||
CryptPad is *private*, not *anonymous*. Privacy protects your data, anonymity protects you.
|
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
|
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.
|
Still there are other low-lives in the world so using CryptPad over HTTPS is probably a good idea.
|
||||||
|
|
||||||
## Setup using Docker
|
# Translations
|
||||||
|
|
||||||
See [Cryptpad-Docker](docs/cryptpad-docker.md)
|
|
||||||
|
|
||||||
## Translations
|
|
||||||
|
|
||||||
We'd like to make it easy for more people to use encryption in their routine activities.
|
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
|
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).
|
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),
|
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
|
via our [github issue tracker](https://github.com/xwiki-labs/cryptpad/issues/), on the
|
||||||
[freenode](http://webchat.freenode.net/?channels=%23cryptpad&uio=MT1mYWxzZSY5PXRydWUmMTE9Mjg3JjE1PXRydWUe7)
|
[freenode](http://webchat.freenode.net/?channels=%23cryptpad&uio=MT1mYWxzZSY5PXRydWUmMTE9Mjg3JjE1PXRydWUe7)
|
||||||
irc network, or by [email](mailto:research@xwiki.com).
|
irc network, or by [email](mailto:research@xwiki.com).
|
||||||
|
|
||||||
## Contributing
|
# Contributing
|
||||||
|
|
||||||
We love Open Source and we love contribution. It is our intent to keep this project available
|
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
|
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.
|
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
|
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)
|
published by the Free Software Foundation, either version 3 of the License, or (at your option)
|
||||||
|
|||||||
BIN
screenshot.png
Normal file
BIN
screenshot.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 410 KiB |
Loading…
x
Reference in New Issue
Block a user