mirror of
https://github.com/Ellpeck/ObsidianJustSharePlease.git
synced 2024-11-27 04:38:34 +01:00
77 lines
5.9 KiB
Markdown
77 lines
5.9 KiB
Markdown
# Just Share Please for Obsidian
|
|
Just Share Please is an [Obsidian](https://obsidian.md) plugin that allows quickly and easily sharing individual notes online using an anonymized link.
|
|
|
|
![A preview showing off a shared note in Just Share Please](https://raw.githubusercontent.com/Ellpeck/ObsidianJustSharePlease/main/media/preview.png)
|
|
|
|
## How to Use
|
|
First of all, you will need to install the Just Share Please plugin in Obsidian, which you can find [on GitHub](https://github.com/Ellpeck/ObsidianJustSharePlease/releases). Then, you can get started right away!
|
|
|
|
### Sharing a Note
|
|
To share a note, simply open the context menu on the note you want to share (or right-click it in the file list) and select "Share to JSP".
|
|
|
|
![](https://raw.githubusercontent.com/Ellpeck/ObsidianJustSharePlease/main/media/share.png)
|
|
|
|
The note will then be uploaded automatically, and a link to it will be copied to your clipboard.
|
|
|
|
### Managing Shared Notes
|
|
There are two ways to manage shared notes: you can open the context menu on a shared note like you would to share it, or you can open the Just Share view using the command palette.
|
|
|
|
![](https://raw.githubusercontent.com/Ellpeck/ObsidianJustSharePlease/main/media/view.png)
|
|
|
|
Both allow a set of actions, including sharing the link, updating the share and deleting the share. When updating the share, the link will stay intact, but it will be updated with the note's new content.
|
|
|
|
## How it Works (and Security)
|
|
Just Share Please uses a simple [PHP backend](https://github.com/Ellpeck/ObsidianJustSharePlease/blob/main/server/public/share.php) that accepts requests for sharing, updating and deleting notes.
|
|
|
|
When sharing a note, its content as well as additional metadata created by the backend is stored in the server's `data` directory. Note content is stored **in plain text**, which means server admins are able to observe all notes and their content and potentially edit them. However, for users of Just Share Please to update or delete a shared note, they have to have access to a **password** that is automatically generated by the backend when sharing a note. You don't have to remember this password yourself, as it is automatically saved in the plugin's settings file. This also means that **deleting your settings** causes you to **lose access to all your shares**.
|
|
|
|
Due to the fact that note links are generated randomly, it is reasonably difficult for attackers to guess note links and access notes that they're not supposed to. That being said, all notes are still publicly available the same way that YouTube videos set to "Unlisted" are still publicly available: harder to access, but not impossible; not truly private.
|
|
|
|
Before being uploaded, notes go through minor preprocessing as part of the plugin, including
|
|
- stripping frontmatter (optionally, this can be changed in the plugin settings),
|
|
- converting all attachments to `base64` encoding and embedding them in the shared note as HTML.
|
|
|
|
Currently, links to other notes are included in your share, but don't actually lead anywhere, and sharing linked notes is not supported yet.
|
|
|
|
## Self-Hosting
|
|
If you want to self-host Just Share Please for you and your friends' notes, you can do so easily by downloading the server's files [from GitHub](https://github.com/Ellpeck/ObsidianJustSharePlease/tree/main/server).
|
|
|
|
The server contains two main directories: `public` and `data`. The `public` directory contains the files that should be served to users by your web server, whereas the `data` directory should be accessible to your web server itself, but **not** to website users. The `data` directory is where note data will be stored.
|
|
|
|
As an example, the official site is hosted using Apache 2 with the following virtual host file:
|
|
```apacheconf
|
|
<VirtualHost *:443>
|
|
ServerName jsp.ellpeck.de
|
|
DocumentRoot /var/www/jsp/public
|
|
|
|
<Directory /var/www/jsp/public>
|
|
Options FollowSymLinks MultiViews
|
|
|
|
Order allow,deny
|
|
Allow from all
|
|
|
|
ExpiresActive On
|
|
ExpiresDefault A600
|
|
</Directory>
|
|
|
|
SSLCertificateFile ...
|
|
SSLCertificateKeyFile ...
|
|
</VirtualHost>
|
|
```
|
|
|
|
It is **highly recommended** to use SSL encryption through LetsEncrypt or another service to secure note content and especially the passwords generated by the server for updating and deleting notes.
|
|
|
|
The `index.html` and `style.css` files contain the site's styling and layout and can be changed freely, except for the code in `index.html` which fetches and displays notes. The `index.md` file is the one that is displayed when the site is opened without a note hash attached, and the default one contains the information that you're reading right now.
|
|
|
|
Lastly, to get your server connected to the plugin, head to its settings and change the Just Share Please Server setting's value to your server's public URL.
|
|
|
|
## About This Site
|
|
The official Just Share Please site, [jsp.ellpeck.de](https://jsp.ellpeck.de), is run by Ellpeck, the creator of the plugin. It is hosted on a server in Germany, and connections to and from it are secured using SSL encryption, partly through LetsEncrypt and partly through Cloudflare SSL.
|
|
|
|
If you have lost access to your shares due to your settings file being deleted or due to other reasons, and you want your shares to be deleted, please contact Ell at [me@ellpeck.de](mailto:me@ellpeck.de) or through his [Discord server](https://ellpeck.de/discord).
|
|
|
|
Additionally, the site's source can be found [on GitHub](https://github.com/Ellpeck/ObsidianJustSharePlease/tree/main/server), and for information on privacy and ownership, see the [imprint](https://ellpeck.de/impressum/) and [privacy policy](https://ellpeck.de/privacy/). Ellpeck Games is not responsible for content published through Just Share Please.
|
|
|
|
Lastly, if you like this plugin and website and want to support their development, you can do so through my website by clicking this fancy image!
|
|
|
|
[![Support me (if you want), via Patreon, Ko-fi or GitHub Sponsors](https://ellpeck.de/res/generalsupport.png)](https://ellpeck.de/support)
|