mirror of
https://github.com/simplex-chat/simplexmq.git
synced 2026-03-29 08:00:09 +00:00
* xftp-web: add "Upload your file" link after download completes * xftp-web: call initUpload directly instead of hashchange dispatch
xftp-web
Browser-compatible XFTP file transfer client in TypeScript.
Prerequisites
- Haskell toolchain with
cabal(to buildxftp-server) - Node.js 20+
- Chromium system dependencies (see below)
Setup
# Build the XFTP server binary (from repo root)
cabal build xftp-server
# Install JS dependencies
cd xftp-web
npm install
# Install Chromium for Playwright (browser tests)
npx playwright install chromium
If Chromium fails to launch due to missing system libraries, install them with:
# Requires root
npx playwright install-deps chromium
Running tests
# Browser round-trip test (vitest + Playwright headless Chromium)
npm run test
The browser test automatically starts an xftp-server instance on port 7000 via globalSetup, using certs from tests/fixtures/.
Build
npm run build
Output goes to dist/.