mirror of
https://github.com/lbr77/SideImpactor.git
synced 2026-05-06 11:14:01 -04:00
71 lines
1.7 KiB
Markdown
71 lines
1.7 KiB
Markdown
# Side Impactor
|
|
|
|
Browser-based IPA signing and installation. Pair an iOS device over WebUSB, sign with your Apple Developer account, and install — all from a single web page.
|
|
|
|
## Quick Start
|
|
|
|
```bash
|
|
bun install --ignore-scripts
|
|
bun run dev
|
|
```
|
|
|
|
Open `http://localhost:5173`.
|
|
|
|
## Project Structure
|
|
|
|
| Path | Purpose |
|
|
|---|---|
|
|
| `frontend/` | React + Tailwind SPA (Vite) |
|
|
| `backend/` | Cloudflare Workers relay |
|
|
| `dependencies/webmuxd/` | WebUSB usbmux/lockdown protocol library |
|
|
| `wasm/openssl/` | OpenSSL WASM (TLS + pair record generation) |
|
|
| `wasm/libcurl-wasm/` | libcurl WASM (Apple API HTTP via WISP proxy) |
|
|
| `wasm/zsign-wasm/` | zsign WASM (IPA re-signing) |
|
|
| `scripts/` | WASM native build scripts (Rust + Emscripten) |
|
|
|
|
## Build
|
|
|
|
```bash
|
|
# WASM dist bundles (copies pre-built src→dist, no compiler needed)
|
|
bun run build:wasm:dist
|
|
|
|
# Frontend production build (runs wasm:dist automatically)
|
|
bun run build:frontend
|
|
|
|
# Full WASM recompile from source (requires Rust, Emscripten, precompiled OpenSSL)
|
|
bun run build:wasm
|
|
```
|
|
|
|
## Docker
|
|
|
|
```bash
|
|
bun run build:wasm:dist # ensure WASM dists exist
|
|
docker build -t sideload-web .
|
|
docker run -p 3000:3000 sideload-web
|
|
```
|
|
|
|
## Cloudflare
|
|
|
|
```bash
|
|
cd backend
|
|
bun run deploy
|
|
```
|
|
|
|
## Test
|
|
|
|
```bash
|
|
bun run test # webmuxd unit tests
|
|
bun run test:frontend # frontend vitest suite (141 tests)
|
|
```
|
|
|
|
## Credits
|
|
|
|
Projects referenced:
|
|
- [libimobiledevice](https://github.com/libimobiledevice/libimobiledevice)
|
|
- [webmuxd](https://github.com/hack-different/webmuxd)
|
|
- [zsign](https://github.com/nicehash/zsign)
|
|
- [openssl-wasm](https://github.com/nicehash/openssl-wasm)
|
|
Friends helped with feedback:
|
|
- [@Lakr233](https://github.com/Lakr233)
|
|
|