-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathsetup.sh
More file actions
executable file
·62 lines (50 loc) · 1.41 KB
/
Copy pathsetup.sh
File metadata and controls
executable file
·62 lines (50 loc) · 1.41 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#!/usr/bin/env bash
set -e
echo "=== Dev Agent Workshop Setup ==="
echo ""
# Check required tools
errors=0
check_tool() {
if command -v "$1" &> /dev/null; then
echo " [OK] $1 $(command $1 --version 2>/dev/null | head -1)"
else
echo " [MISSING] $1 — $2"
errors=$((errors + 1))
fi
}
echo "Checking prerequisites..."
check_tool python3 "Install from https://python.org"
check_tool uv "Install with: curl -LsSf https://astral.sh/uv/install.sh | sh"
check_tool node "Install from https://nodejs.org"
if ! command -v pnpm &> /dev/null; then
echo " [INSTALLING] pnpm..."
npm install -g pnpm 2>/dev/null && echo " [OK] pnpm installed" || {
echo " [MISSING] pnpm — Install with: npm install -g pnpm"
errors=$((errors + 1))
}
else
echo " [OK] pnpm $(pnpm --version 2>/dev/null)"
fi
check_tool claude "Install from https://docs.anthropic.com/en/docs/claude-code"
echo ""
if [ $errors -gt 0 ]; then
echo "ERROR: $errors missing tool(s). Install them and re-run this script."
exit 1
fi
# Install dependencies
echo "Installing Python dependencies..."
uv sync --all-extras
echo ""
echo "Installing frontend dependencies..."
cd frontend && pnpm install && cd ..
echo ""
echo "Running tests..."
uv run pytest -q
echo ""
echo "=== Setup complete! ==="
echo ""
echo "To start the app:"
echo " ./scripts/run-dev.sh"
echo ""
echo "To start Claude Code:"
echo " claude"