1
0
mirror of https://github.com/stonith404/pingvin-share.git synced 2024-06-30 06:30:11 +02:00
A self-hosted file sharing platform that combines lightness and beauty, perfect for seamless and efficient file sharing.
Go to file
2023-02-12 14:40:10 +01:00
.github chore: add question issue template 2023-02-12 14:40:10 +01:00
backend release: 0.10.0 2023-02-10 11:47:29 +01:00
frontend fix: non administrator user redirection error while setup isn't finished 2023-02-11 15:57:21 +01:00
.dockerignore fix: my shares doesn't make an api request 2022-10-14 11:29:54 +02:00
.gitignore chore: Fixed some missing dependencies in package.json 2022-10-12 16:03:50 -04:00
CHANGELOG.md release: 0.10.0 2023-02-10 11:47:29 +01:00
CONTRIBUTING.md docs: improve contributing guideline 2023-02-10 14:22:32 +01:00
docker-compose-dev.yml feat: add ClamAV to scan for malicious files 2023-01-13 10:16:35 +01:00
docker-compose.yml chore: docker compose ClamAV optimizations 2023-01-13 14:11:33 +01:00
Dockerfile feat: add ClamAV to scan for malicious files 2023-01-13 10:16:35 +01:00
LICENSE Create LICENSE 2022-04-26 08:15:49 +02:00
package.json release: 0.10.0 2023-02-10 11:47:29 +01:00
README.md docs: add stand-alone installation guide 2023-02-10 14:59:19 +01:00
SECURITY.md Create SECURITY.md 2022-12-12 11:11:28 +01:00


Pingvin Share

Pingvin Share is self-hosted file sharing platform and an alternative for WeTransfer.

Features

  • Share files using a link
  • Unlimited file size (restricted only by disk space)
  • Set an expiration date for shares
  • Secure shares with visitor limits and passwords
  • Email recipients
  • Integration with ClamAV for security scans

🐧 Get to know Pingvin Share

⌨️ Setup

Note: Pingvin Share is in its early stages and may contain bugs.

  1. Download the docker-compose.yml file
  2. Run docker-compose up -d

The website is now listening available on http://localhost:3000, have fun with Pingvin Share 🐧!

Stand-alone Installation

Required tools:

  • Node.js >= 14
  • Git
  • pm2 for running Pingvin Share in the background
git clone https://github.com/stonith404/pingvin-share
cd pingvin-share

# Checkout the latest version
git fetch --tags && git checkout $(git describe --tags `git rev-list --tags --max-count=1`)

# Start the frontend
cd frontend
npm install
npm run build
pm2 start npm --name="pingvin-share-frontend" -- run start

# Start the backend
cd ../backend
npm install
npm run build
pm2 start --name="pingvin-share-backend" npm -- run prod

The website is now listening available on http://localhost:3000, have fun with Pingvin Share 🐧!

Integrations

ClamAV (Docker only)

ClamAV is used to scan shares for malicious files and remove them if found.

  1. Add the ClamAV container to the Docker Compose stack (see docker-compose.yml) and start the container.
  2. Docker will wait for ClamAV to start before starting Pingvin Share. This may take a minute or two.
  3. The Pingvin Share logs should now log "ClamAV is active"

Please note that ClamAV needs a lot of ressources.

Additional resources

Upgrade to a new version

As Pingvin Share is in early stage, see the release notes for breaking changes before upgrading.

Docker

docker compose pull
docker compose up -d

Stand-alone

Repeat the steps from the installation guide except the git clone step.

🖤 Contribute

You're very welcome to contribute to Pingvin Share! Follow the contribution guide to get started.