mirror of
https://github.com/swissmakers/swiss-datashare.git
synced 2026-03-30 05:27:03 +02:00
d6718cc54552b2cfe17f1bf6e13f646f876bbe50
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_LIMITvariable in the.envfile 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
.env.examplefile to.env - Paste the key in the
.envfile - Change
NEXT_PUBLIC_APPWRITE_HOSTin the.envfile to the host where your Appwrite instance runs - Change
NEXT_PUBLIC_MAX_FILE_SIZEin the.envfile to the max file size limit you want
Start the frontend:
With docker:
- Run
docker-compose up -d --build
Without docker:
- Run
npm install - Run
npm run build && npm run start
Contribute
You're very welcome to contribute to Pingvin Share! Contact me, create an issue or directly create a pull request.
Description
Languages
TypeScript
98.3%
Dockerfile
0.5%
Shell
0.5%
JavaScript
0.4%
CSS
0.3%