Thank you for your interest in contributing. This guide covers local setup and how to submit changes.
Prerequisites: Rust 1.91+, Node.js 20+, pnpm 10+
git clone https://github.com/tonyantony300/alt-sendme.git
cd alt-sendme
pnpm installpnpm tauri devProduction build (skips installer/bundle packaging):
pnpm tauri build --no-bundleUse the web target to run the app in a browser during development.
Start the web dev server:
pnpm build:wasm
pnpm dev:webOpen http://localhost:3000/.
Production web build:
pnpm build:web
pnpm preview:webpnpm android:dev| Path | Purpose |
|---|---|
frontend/ |
React UI (Tauri + web targets) |
src-tauri/ |
Tauri desktop/Android shell |
engine/ |
Rust P2P transfer engine |
www/ |
Public Next.js site (planned) |
To exercise transfers on a single machine, install the Sendme CLI and share files locally — traffic stays on your device.
Engine E2E tests:
cargo test --manifest-path engine/Cargo.toml- Search existing issues before opening a new one.
- For bugs, use the bug report template.
- Run checks before opening a PR:
pnpm lint
pnpm format- Fill out the pull request template.
Lockfiles: Do not commit lockfile-only changes. CI rejects PRs that modify pnpm-lock.yaml or Cargo.lock without a corresponding manifest change.
git checkout origin/main -- pnpm-lock.yaml src-tauri/Cargo.lock engine/Cargo.lockPlease be respectful and considerate in all project spaces.