Files
smart_wasm/scripts/serve.ps1
2026-06-01 17:25:10 +08:00

56 lines
1.5 KiB
PowerShell

# serve.ps1 - development server launcher
Write-Host "=== Start Dev Server ===" -ForegroundColor Cyan
Write-Host ""
if (-not (Test-Path "public/wasm/smart_math.js")) {
Write-Host "[!] WASM output not found, building first..." -ForegroundColor Yellow
& "$PSScriptRoot\build.ps1"
if (-not (Test-Path "public/wasm/smart_math.js")) {
Write-Host "[x] Build failed, cannot start server" -ForegroundColor Red
exit 1
}
}
$pythonCommand = $null
$pythonCandidates = @(
"python",
"py",
"python3",
"C:\Python39\python.exe",
"C:\Python38\python.exe",
"C:\Python37\python.exe"
)
foreach ($candidate in $pythonCandidates) {
try {
& $candidate --version 2>&1 | Out-Null
if ($LASTEXITCODE -eq 0) {
$pythonCommand = $candidate
Write-Host "[ok] Python found: $candidate" -ForegroundColor Green
break
}
} catch {
continue
}
}
if (-not $pythonCommand) {
Write-Host "[x] Python 3.7+ not found in PATH" -ForegroundColor Red
exit 1
}
$publicDir = Resolve-Path "public"
Write-Host "[ ] Starting dev server..." -ForegroundColor Cyan
Write-Host ""
Write-Host "Server info:" -ForegroundColor White
Write-Host " - URL: http://localhost:8080/index.html" -ForegroundColor Cyan
Write-Host " - Root: $publicDir" -ForegroundColor Gray
Write-Host " - Home: /index.html" -ForegroundColor Gray
Write-Host " - Stop: Ctrl+C" -ForegroundColor Yellow
Write-Host ""
Set-Location $publicDir
& $pythonCommand -m http.server 8080