Privacy is a fundamental right, an irrevocable entitlement held by all human beings from the moment of birth. However, this boundary has been crossed systematically over and over again, and a large population still lives under heavy monitoring and censorship.
This application is an end-to-end encrypted notebook that can only be viewed, edited, or shared by authorized users. Unless the E2E key
or your device is compromised, no one can view the content.
- Use it as a personal private notebook. For example, for daily notes, family secrets, etc.
- Personal lockbox. You can store private information such as passport numbers, etc.
- Share your notes with some of your friends for a limited time.
- Many more possibilities not listed here.
- There is a
View All
button, which shows all pages together. You can use your browser's search feature there to find the information you need. - If you want to make a link to another notebook, sometimes the browser won't refresh due to routing issues. You can add another
/
in front of/index.html
to work around that.
- You create or modify the notebook in your browser on your local computer. Then you can choose to save it as a file or publish it to the web.
- If you save to a file, you can choose plain text or encrypted. If you choose to publish to the web:
- The
E2E key
is used for end-to-end encryption or decryption of the content. If you don't set that, it would function as a regular notebook. Note that even without anE2E key
, the system administrator or network monitor cannot decrypt the content because encryption and decryption occur in your browser. We strongly recommend setting a password for better protection.
- The
- This notebook is fully integrated and compatible with PrivateBin. You can save the data in PrivateBin and then decrypt and view it from this app.
You can read or write a notebook and then save or load from a local file.
- The
E2E key
is strongly recommended as it provides better protection. - Once you load the content, you can modify the note or save it with a different
E2E key
.
- When creating it, you can start writing a notebook from scratch or load it from a pre-saved file.
- There are two ways to share the notebook:
- If this app is configured with PrivateBin, you can directly save it from the app. Then the shareable URL will appear at the top right of your screen.
- You can also gather the note data and publish it to a publicly available PrivateBin. This app can load from the public URL and translate it into another URL that you can share. Here is a list of publicly available PrivateBins: https://github.com/PrivateBin/PrivateBin/wiki/PrivateBin-Instances-Directory
- Here is a Peppa Pig's simple trivial questions without a password. And you need the answers from the simple one to open Peppa Pig's Advanced trivial questions.
- 中文问答 00后不懂的事情. 你必须答出来之前的题目才能够看 巧问妙答和笑话.
- Of course, you can always create a brand new notebook.
Here are a few notebook sites publicly available. They are mainly for demo purposes.
https://privapps.github.io/notebook/
There are two types of No Backend:
- Relays the notes to remote third-party PrivateBin sites. If the third-party storage dies or recycles, data will be wiped out.
- All your data is in your URL.
You can also find Docker images at https://hub.docker.com/u/privapps
See build details at https://github.com/privapps/notebook-docker-nginx-fpm-alpine-privatebin
We would love to hear your opinions. Please let us know via our Feedback Form.
The configuration is located at assets/config.json
.
You can use PrivateBin as a backend. Additionally, there is a custom-built backend that allows editing existing notebooks, making it like a wiki/blog. See details at: https://github.com/privapps/notebook-docker-nginx-fpm-alpine-privatebin/
This project was generated with Angular CLI version 13.1.1.
- In the root folder, do:
npm ci
- Launch the PrivateBin Docker container (note: using port 9080):
docker run -d --restart="always" --read-only -p 9080:8080 -v c:/temp/php:/app privatebin/nginx-fpm-alpine
- Check the following two files, one for Angular proxy and the other for the app configuration:
\proxy.conf.json \src\assets\config.json
- Start developing the app as a regular Angular one:
ng s --proxy-config proxy.conf.json
- Release:
ng build --aot --configuration production
To accomplish copying the URL and sharing it with others, some characters are replaced in the address bar after #
:
/
is replaced by___
=
is replaced by,
?
is replaced by---
If you have an encrypted file on your machine and don't want to or can't launch a web server, you can do:
inlinedata=$(cat "<encrypted_file>" | base64 -i - | sed 's'/\//./g')
# URL should be
# <prefix>#/notes/0/type,inline&symmetric,<key>&base64,<inlinedata>
- Implement editable backend, so existing notebooks can be modified
- All your data in your URL
- Code highlight
- Mermaid URL
bitcoin:bc1qmyewq7mh03a3sd5zgvvg3y5sqgm5un3e7eayhq?time=1614371109
Thank you for helping with the maintenance and further development of the app. Please stand up to protect privacy, promote freedom of speech, and fight against censorship.