Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
April 25, 2022 07:28 pm GMT

Pingvin Share - A selfhosted file sharing platform

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.

A small demo before we begin.
Pingvin Share Demo

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

GitHub logo stonith404 / pingvin-share

A selfhosted file sharing plattform made for the Appwrite Hackathon


Pingvin Share

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

  1. Install Appwrite
  2. Create an Account on your Appwrite instance
  3. 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.

  1. Install Node
  2. Clone the repository with git clone https://github.com/stonith404/pingvin-share
  3. Visit the repository directory with cd pingvin-share
  4. Run npm run init:appwrite

3. Frontend

To set up the frontend of Pingvin Share follow these steps.

  1. Go to your Appwrite console, visit "API Keys" and copy the "Functions API Key" secret to your clipboard.
  2. 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


Original Link: https://dev.to/stonith404/pingvin-share-a-selfhosted-file-sharing-platform-2mb0

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To