Live location tracking and playback for the game "manhunt"
1_default:
2 @just --list --unsorted --justfile {{ justfile() }}
3
4# Perform setup for the frontend using `npm`
5[working-directory('frontend')]
6setup-frontend:
7 npm install --no-fund --no-audit
8
9# Run locally
10dev:
11 cargo tauri dev
12
13# Start a webview window *without* running the frontend, only one frontend needs to run at once
14dev-window:
15 cargo run -p manhunt-app
16
17# Format everything
18fmt:
19 cargo fmt
20 prettier --write . --cache --cache-location .prettiercache --log-level warn
21 just --fmt --unstable
22
23# Connect and run on an Android VM/Physical device
24dev-android:
25 cargo tauri android dev
26
27# Run a check on the backend
28check-rust:
29 cargo fmt --check
30 cargo check
31 cargo clippy --fix --allow-dirty --allow-staged -- -D warnings
32 cargo nextest run
33
34# Run lint on the frontend
35[working-directory('frontend')]
36check-frontend:
37 npm run lint
38
39# Export types from the backend to TypeScript bindings
40export-types:
41 cargo run --bin export-types frontend/src/bindings.ts
42 prettier --write frontend/src/bindings.ts --config .prettierrc.yaml
43
44# Start the signaling server on localhost:3536
45[working-directory('manhunt-signaling')]
46signaling:
47 cargo run 0.0.0.0:3536