6.3 KiB
Just Share Please for Obsidian
Just Share Please is an Obsidian plugin that allows quickly and easily sharing individual notes online using an anonymized link.
How to Use
First of all, you will need to install the Just Share Please plugin in Obsidian, which you can find on GitHub. 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".
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.
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)
To report a security vulnerability, please use GitHub's private vulnerability reporting feature or email me@ellpeck.de.
Just Share Please uses a simple PHP backend 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.
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:
<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.
If you have any additional questions about the plugin or the self-hosting setup, feel free to join the Discord!
About This Site
The official Just Share Please site, 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 or through the Discord server.
Additionally, the site's source can be found on GitHub, and for information on privacy and ownership, see the imprint and privacy policy. 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!