Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/nwtgck/piping-ui-web

Easy and secure file transfer between every device over HTTPS with/without E2E encryption by ECDH and OpenPGP
https://github.com/nwtgck/piping-ui-web

data-transfer e2ee end-to-end-encryption gpg passwordless piping-server vue web

Last synced: about 2 months ago
JSON representation

Easy and secure file transfer between every device over HTTPS with/without E2E encryption by ECDH and OpenPGP

Awesome Lists containing this project

README

        

# Piping UI
[![Cloudflare Pages](https://github.com/nwtgck/piping-ui-web/actions/workflows/cloudflare-pages.yml/badge.svg)](https://github.com/nwtgck/piping-ui-web/actions/workflows/cloudflare-pages.yml) [![E2E testing](https://github.com/nwtgck/piping-ui-web/actions/workflows/e2e-test.yml/badge.svg)](https://github.com/nwtgck/piping-ui-web/actions/workflows/e2e-test.yml)
Launch now as Web App

Web UI for [Piping Server](https://github.com/nwtgck/piping-server) - Easy and secure file transfer between every device over HTTPS
![Piping UI - iPhone to UI](doc_assets/iphone-to-ui.gif)

## Application

![Piping UI QR code](./doc_assets/piping-ui-qr.png)

## Features

- Download while uploading
- [Progressive Web Apps](https://developers.google.com/web/progressive-web-apps) (PWA)
- Dark theme
- English/Japanese
- Multi-file sending with zip
- Auto completes for server URLs and secret paths
- Image/video preview
- Passwordless [E2E encryption] by [Elliptic-curve Diffie–Hellman] and [OpenPGP.js]
- Password protection powered by [OpenPGP.js]
- Share Sheet support by Web Share Target API

## Self-hosting

You can build Piping UI by yourself like the following.

```console
$ git clone https://github.com/nwtgck/piping-ui-web.git
$ cd piping-ui-web
$ npm ci
$ npm run build
```

Then, you can publish `./dist`.
In addition, you can also use hosting services such as GitHub pages and Netlify.

### Change default Piping Server URLs at build-time

Set env `$PIPING_SERVER_URLS` to change default Piping Server URLs.

```console
$ PIPING_SERVER_URLS='["https://mypiping.server", "https://mypipi.ng"]' npm run build
```

![Build-time Piping Server URLs](doc_assets/build-time-piping-server-urls.png)

## Sitemap for telling about localized versions

Set env `$SITE_URL` to generate `sitemap.xml` for telling about localized versions. `robots.txt` has also `Sitemap: ...` section.
(see: )
(see: )

```console
$ SITE_URL="https://mypiping.ui" npm run build
```

## Logo

Icons made by Freepik from www.flaticon.com

[E2E encryption]: https://en.wikipedia.org/wiki/End-to-end_encryption
[Elliptic-curve Diffie–Hellman]: https://en.wikipedia.org/wiki/Elliptic-curve_Diffie%E2%80%93Hellman
[OpenPGP.js]: https://github.com/openpgpjs/openpgpjs