PlikShare is a self-hosted file sharing application that allows you to securely share files with others.
- Self-hosted file sharing solution
- Secure file upload and download
- User management
- Access control
- Files Encryption
- Easy deployment
- Box Widgets which can be embedded on the other websites
I double-checked - he made no mistake this time. It's "pleek-share" (plēk-shâr)!
Where "Plik" in ancient Polish means "file".
(Yeap, it's hard to find good domain name these times 🥲)
All the necessery instructions can be found here: https://plikshare.com/download
Docker image is available here: https://hub.docker.com/r/damiankrychowski/plikshare
To start using PlikShare you need to do two things:
- Configure an email client (so that PlikShare can send notifications, confirm user emails etc.)
- Configure a storage
plikshare_initial_setup.mp4
The fastes way is to create zip archive out of the files you want to upload and then use PlikShare bulk upload feature!
plikshare_bulk_upload.mp4
My favorite way to download files from PlikShare is to use explorer tree view - there you pick files and folders you want to have in your final archive and download them at once.
plikshare_bulk_download.mp4
PlikShare allows you to create "boxes" - a layer that connects your folders to the external world. These boxes give you control over how others interact with your selected folders. With boxes, you can:
- Invite team members to collaborate
- Create anonymous links with various permission levels
- Set up read-only boxes where others can only view content
- Create upload-only boxes where users can add files without seeing existing content
This structured approach provides a secure and flexible way to share your files while maintaining precise control over access permissions.
plikshare_box.mp4
PlikShare includes a built-in preview function for various file formats. You can open videos, audio files, text files, PDFs, and it can render markdown files directly in the browser.
I couldn't resist implementing ZIP file browsing capabilities as well. This feature allows you to navigate through ZIP archives and even preview files contained within them without having to extract the archive first.
plikshare_file_preview.mp4
Each PlikShare box can be used as a widget and embedded on other websites. To do this, you need to:
- Create a box
- Create a link
- Set required permissions
- Click the widget setup
- Add the destination website origin to the allowed list
On your website, you'll need to import the provided JavaScript and CSS files in the head section. Then you can use the <plikshare-box-widget>
web component.
Here's how it looks in practice (as seen on https://plikshare.com):
plikshare_box_widget.mp4
PlikShare can render markdown files and it supports mermaid diagrams. Markdown files are also the only files in PlikShare (for now!) that can be directly edited.
Why? It's connected with my development plans for the app. My long-term goal is to integrate PlikShare seamlessly with AI such as ChatGPT, Claude, etc., and markdown seems like a natural choice for a file format that is both easy for people to write and for AI to understand.
plikshare_markdown_files.mp4
The first integration I added to PlikShare is Textract - it allows users to extract text from PDFs (or images). To configure Textract, we first need to configure AWS S3 as storage, because Textract operates on files stored there.
plikshare_create_aws_storage.mp4
When S3 is configured, we need to add the Textract integration (it's important to prepare access keys with appropriate permissions - but in case of any mistakes, the configuration test should fail and inform us what is wrong).
plikshare_create_aws_textract.mp4
And finally, when everything is ready, we can extract text from a PDF:
plikshare_textract_in_action.mp4
How does it work? Behind the scenes, PlikShare copies a file into the Textract storage, triggers the extraction, copies the result back into the original workspace, and then removes the file from AWS S3. Fancy!
The second integration is the possibility to use your text files with ChatGPT and run queries against them. That's why I started with OCR so that I can have an easy way to convert PDF -> text and not worry about how to push PDF into AI directly as these are still very early stages of these integrations.
To use ChatGPT, we need to configure it first, and then an additional option at the file preview level is available to talk to chat and to include the file (or its attachments) in the query. What is convenient is the possibility to convert all files produced by AI into file attachments - just as Textract results were stored as attachments.
plikshare_chat_gpt_integration.mp4
Having trouble with self-hosting or interested in a managed version with support?
- Schedule a call: https://cal.com/damian.krychowski
- Email: damian.krychowski@hey.com
PlikShare is developed and maintained by Damian Krychowski. PlikShare is distributed under an AGPLv3 license.
The name "PlikShare" and the PlikShare logo are trademarks owned by Damian Krychowski and are not covered by the AGPLv3 license. Please see TRADEMARK.md for usage guidelines.