Note
I am not a front-end developer. This repository is a mess. I am sorry.
Anesidora is an end-to-end encrypted file sharing service. This repository contains the front-end for the service, written in JavaScript with Preact. The back-end is written in Rust and can be found in a separate repository.
Several features used by Anesidora are not supported by all browsers:
- Streaming File Uploads
- Defined in WHATWG Fetch Standard
- Support as of 2023-04-15:
- Chromium: Introduced in 105
- Mozilla: Unclear Standard Position, not implemented
- WebKit: Positive Standard Position, not implemented
- Native File System Access
- Defined in WICG File System Access API
- Support as of 2023-04-15:
- Chromium: Introduced in 86
- Mozilla: Harmful Standard Position, won't implement
- WebKit: Opposing Standard Position, won't implement
Using Anesidora on a browser that does not support these features may result in file size limitations or out of memory errors when uploading large files.
Anesidora does not require Node.JS or, in fact, any build step. Simply serve the root directory of the repository
using a web server. For local development, Python's http.server
is sufficient:
python3 -m http.server 6969