This content originally appeared on DEV Community and was authored by Elias Schneider
Overview of My Appwrite x DEV Hackathon Submission
Pingvin Share is a self-hosted file-sharing platform built with the awesome BaaS (Backend as a Service) Appwrite.
You can try it by your own on https://pingvin-share.dev.eliasschneider.com
The idea for this project came because I want to share some confidential files with my family.
Because privacy is important to me and I love self-hosting I searched for a self-hosted file sharing platform.
I only found big solutions like Nextcloud but I wanted a lightweight service without advanced features that I don't need.
Featuress
- Upload as big files as you want. Only your hard drive will be your limit
- Create a visitors-limit per share
- Add a password protection for your share
Technologies
Appwrite
Appwrite is the core for Pingvin Share. Pingvin Share uses Appwrite Storage, Database, Authentication and Cloud functions.
NextJS
This project uses NextJS as the frontend and for some API endpoints.
Mantine
Mantine is a beautiful React component library. It ships useful hooks, awesome components, a form handler, a modal manager, a notification manager and many more.
Submission Category
Web2 Wizards
Link to Code
stonith404
/
pingvin-share
A selfhosted file sharing plattform made for the Appwrite Hackathon
Pingvin Share is a selfhosted file sharing plattform made for the Appwrite Hackathon.
Showcase
https://pingvin-share.dev.eliasschneider.com
Setup
At the moment, the setup is a bit time-consuming. I will improve the setup in the future.
1. Appwrite
Pingvin Share uses Appwrite as backend. You have to install and setup Appwrite first
- Install Appwrite
- Create an Account on your Appwrite instance
- Change the
_APP_STORAGE_LIMIT
variable in the.env
file of Appwrite to your prefered max size limit per share
2. Setup script
To setup the backend structure of Pingvin Share you have to run the setup script.
- Install Node
- Clone the repository with
git clone https://github.com/stonith404/pingvin-share
- Visit the repository directory with
cd pingvin-share
- Run
npm run init:appwrite
3. Frontend
To set up the frontend of Pingvin Share follow these steps.
- Go to your Appwrite console, visit "API Keys" and copy the "Functions API Key" secret to your clipboard.
- Rename the…
About me
My name is Elias and I'm studying software engineering in Switzerland. This is my first and definitely not least hackathon participation. I've really enjoyed to create this small project and learned a lot!
You can find more about me on https://eliasschneider.com
Resources
This content originally appeared on DEV Community and was authored by Elias Schneider

Elias Schneider | Sciencx (2022-04-25T19:28:47+00:00) Pingvin Share – A selfhosted file sharing platform. Retrieved from https://www.scien.cx/2022/04/25/pingvin-share-a-selfhosted-file-sharing-platform/
Please log in to upload a file.
There are no updates yet.
Click the Upload button above to add an update.