2022-04-03 11:48:35 +02:00
# joplin-vieweb
2022-06-01 12:31:03 +02:00
A simple web viewer for [Joplin ](https://joplinapp.org/ ) notes.
*If it's useful for you, you may consider to [](https://www.paypal.com/donate/?business=T4U6TRV3PKYMY& no_recurring=0& item_name=Thanks+for+your+support+to+Joplin-Vieweb.%0AI+hope+you+find+it+useful.& currency_code=EUR)*
2022-04-03 19:38:28 +02:00
2022-04-29 14:23:16 +02:00
## Purpose
I'm going to use [Joplin ](https://joplinapp.org/ ) as a notes application.
It's a long time I wanted for something like Joplin: opensource, not coupled to a web giant, and without infinite storage: storage has a price, we should pay for it.
Joplin-vieweb purpose is to provide an **online view of my Joplin notes** .
It's running on a "Django server", running beside [Joplin terminal app ](https://joplinapp.org/terminal/ ).
## Screenshot

2022-06-16 09:30:52 +02:00
## Contact
I you want to discuss, ask, suggest... Please:
- Input [an issue ](https://github.com/joplin-vieweb/joplin-vieweb/issues ), or
- start [a discussion on github ](https://github.com/joplin-vieweb/joplin-vieweb/discussions ), or
- post [on discord ](https://discord.gg/akkn2y8vEg )
2022-04-29 14:23:16 +02:00
## Features and not(-yet?) features
### Yes it does ❤
2022-05-05 07:50:43 +02:00
- Protect joplin-vieweb access by login (see [here ](https://github.com/joplin-vieweb/joplin-vieweb/releases/tag/v2.0.3 ) how to logout)
2022-04-29 14:23:16 +02:00
- Display notebooks, and notes
- images
- attachments
- code syntax highlight
- Add a table of content if note contains headers
- Display tags, and notes linked.
- Joplin sync:
- 
- Background periodic joplin sync
- Manual trigged sync, with notebooks and tag refresh
2023-03-22 13:44:58 +01:00
- Supported target: nextcloud, Joplin server, webdav
2022-04-29 14:23:16 +02:00
- Public link if note has ** *public*** tag

- Option to number (or not) header in notes:

- Tag edition: add / remove / create tags in notes:

Once tags edited, a little reminder not to forget to synchronize Joplin:

- Checkbox list changes can be saved to notes.
- 
- Note edition / deletion, with support of image paste, and image / attachment drag& drop.


- Note creation

- Notebook edition: create / rename / delete

- Notes history: list of the latest notes consulted, to be able to open them quickly, or pin them:

- Tabs in notes (not displayed in joplin applications). Syntax here.

- Hyperlink preview in notes, on mouse hover:

2022-06-01 13:17:20 +02:00
- Render KaTeX:
2022-06-01 13:29:17 +02:00

2022-04-29 14:23:16 +02:00
### No it doesn't (yet?) 💔
- Sort notebooks nor notes
- Move note or notebook from one notebook to another.
- No specific handling for todos.
- Search for notes or tags
2022-04-04 22:40:22 +02:00
2022-04-29 12:52:10 +02:00
# Installation / configuration instructions
```diff
! Only linux systems are supported
! Only arm64 and amd64 architectures
! For raspberry users (I am): use 64 bits OS
```
## Installation
2022-04-25 23:09:33 +02:00
Installation is done with docker-compose. The default docker-compose file installs a nginx server with certbot certificates mechanisms, and listens to ports 80 and 443.
2022-05-02 22:23:11 +02:00
If you have your own server, use [docker-compose-joplin-only.yml ](https://github.com/joplin-vieweb/joplin-vieweb/blob/main/docker-compose-joplin-only.yml ). Have a look to [the containers ](#components ).
2023-01-09 20:09:16 +01:00
If your server is apache2, have a look to [this apache configuration procedure ](https://github.com/joplin-vieweb/joplin-vieweb/wiki/Install-joplin-vieweb-on-a-local-web-server,-and-access-it-externally-from-a-subdomain-through-apache2 ).
2022-04-29 13:13:43 +02:00
2022-04-29 12:52:10 +02:00
* Prerequisites: your linux system has docker and docker-compose installed
* Enable docker service at system startup
* Get docker-compose.yml *(either you clone this git repo, or you copy [the file](https://github.com/joplin-vieweb/joplin-vieweb/blob/main/docker-compose.yml) somewhere)*
* Edit the 3 variables (x-common-variables block) at the top of docker-compose file:
2022-05-02 22:23:11 +02:00
* ORIGINS: write the domain and/or IP address (only those origins are allowed to access joplin-vieweb)
Exemple:
```yaml
x-common-variables: & common-variables
ORIGINS: "'http://localhost:8080', 'http://192.168.21.1:8080'"
```
or
```yaml
x-common-variables: & common-variables
ORIGINS: "'https://your_domain.com', 'https://12.34.56.78'"
CERT_DOMAIN: your_domain.com
CERT_MAIL: you@zaclys.net
```
2022-04-29 12:52:10 +02:00
* If you use nginx and certbot containers:
* CERT_DOMAIN: your domain so let's encrypt can contact (IP address doesn't work: you need a domain)
* CERT_MAIL: a mail needed by let's encrypt.
2022-05-10 21:19:56 +02:00
* If you don't use nginx and certbot container (if you use docker-compose-joplin-only.yml):
2022-05-02 22:23:11 +02:00
* Change \<PORT-TO-YOUR-PROXY\> to fit your proxy setup.
2022-04-29 12:52:10 +02:00
* And "run"
2022-04-25 23:08:40 +02:00
```bash
2022-04-29 12:52:10 +02:00
sudo systemctl enable docker
2022-04-25 23:08:40 +02:00
cd ~
mkdir joplin-vieweb
cd joplin-vieweb
wget https://raw.githubusercontent.com/joplin-vieweb/joplin-vieweb/main/docker-compose.yml
2022-04-25 23:10:08 +02:00
vi docker-compose.yml # edit the x-common-variables (3 variables)
2022-04-25 23:08:40 +02:00
sudo docker-compose up
```
2022-04-29 12:52:10 +02:00
Congratulation, the server is running. If the system reboots, the server will start automatically (since we enabled docker.service at startup and the services in odcker-compose are set as "restart")
## Upgrade
When a new version is available, simply go to your docker-compose file:
```bash
sudo docker-compose down
2022-05-01 18:02:58 +02:00
sudo docker-compose pull
2022-04-29 12:52:10 +02:00
sudo docker-compose up
```
2022-08-15 21:54:20 +02:00
## Configuration and usage
```diff
! Users configuration is done from this url: https://your_domain.com/admin/
! Usage url, to access joplin notes: https://your_domain.com/joplin
```
2022-04-29 14:23:16 +02:00
### Users
First you must change admin password:
* login to https://your_domain.com/admin/ (login: admin / password: admin)

* Change the admin password:

* If you want to login to joplin-vieweb with another login than admin: create a user:
2022-04-29 14:24:38 +02:00

2022-04-29 14:23:16 +02:00
* Now you can logout and visit https://your_domain.com/joplin

* Login with admin or your newly created user:

### Synchronisation
2022-04-29 12:52:10 +02:00
You should configure a synchronisation to secure your notes:

1️ ⃣ Click the settings tab
2023-03-23 06:39:22 +01:00
2️ ⃣ Input synchronisation data (only nextcloud, webdav and joplin server are supported for now, if you would like other services, ask in a conversation)
2022-04-29 12:52:10 +02:00
3️ ⃣ Test
4️ ⃣ If test result is OK: save
If your cloud already contains joplin content, do a synchronisation:

1️ ⃣ Click the synchronisation tab
2️ ⃣ click the sync button
3️ ⃣ Wait for the sync to finish (it may take a long time depending on your cloud content)
2022-04-25 23:08:40 +02:00
2022-08-15 21:56:47 +02:00
### Joplin
You can now access your notebooks: https://your_domain/joplin (⚠ don't forget the /joplin ⚠)
2022-04-04 22:40:22 +02:00
# Components
2022-04-29 12:52:10 +02:00

2022-04-04 22:43:19 +02:00