Files
spacedrive/justfile
James Pine f79bbdceef fix: tauri CI builds + macOS runners + spaceui-link
- Add missing @vitejs/plugin-react-swc to tauri devDependencies
- Make spaceui/spacebot vite aliases conditional in tauri config
- Use package export paths for @spacedrive/tokens CSS imports
- Use regex aliases to prevent prefix-matching collisions
- Switch macOS release runners to macos-26 (GitHub-hosted)
- Fix spaceui-link to run bun link from workspace root

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-14 19:51:14 -07:00

82 lines
2.2 KiB
Makefile

# Spacedrive development commands
# Install JS dependencies and set up native deps + cargo config
setup:
bun install
cargo xtask setup
# Run the daemon (default dev workflow: just dev-daemon + just dev-desktop)
dev-daemon *ARGS:
cargo run --features ffmpeg,heif --bin sd-daemon {{ARGS}}
# Run the desktop app in dev mode
dev-desktop:
cd apps/tauri && bun run tauri:dev
# Run the mobile app in dev mode
dev-mobile:
cd apps/mobile && bun run start
# Run the mobile app on iOS
dev-mobile-ios:
cd apps/mobile && bun run ios
# Run the mobile app on Android
dev-mobile-android:
cd apps/mobile && bun run android
# Build the native mobile core
build-mobile:
cargo xtask build-mobile
# Run the headless server (web UI, no desktop app)
dev-server *ARGS:
cargo run --bin sd-server {{ARGS}}
# Run all workspace tests
test:
cargo test --workspace
# Build everything (default members)
build:
cargo build
# Build in release mode
build-release:
cargo build --release
# Format and lint
check:
cargo fmt --check
cargo clippy --workspace
# Format code
fmt:
cargo fmt
# Link SpaceUI packages for local development.
spaceui-link:
#!/usr/bin/env bash
set -euo pipefail
if [ ! -d ../spaceui/packages ]; then
echo "Error: ../spaceui not found. Clone it adjacent to this repo:"
echo " git clone https://github.com/spacedriveapp/spaceui ../spaceui"
exit 1
fi
cd ../spaceui
bun install && bun run build --filter='@spacedrive/primitives' --filter='@spacedrive/ai' --filter='@spacedrive/forms' --filter='@spacedrive/explorer' --filter='@spacedrive/tokens'
for pkg in primitives ai forms explorer tokens; do
cd packages/$pkg && bun link && cd ../..
done
cd "{{justfile_directory()}}"
bun link @spacedrive/primitives @spacedrive/ai @spacedrive/forms @spacedrive/explorer @spacedrive/tokens
echo "SpaceUI packages linked successfully."
# Unlink SpaceUI packages and restore npm versions.
spaceui-unlink:
cd packages/interface && bun unlink @spacedrive/primitives @spacedrive/ai @spacedrive/forms @spacedrive/explorer @spacedrive/tokens && bun install
# Run the CLI
cli *ARGS:
cargo run --bin sd-cli -- {{ARGS}}