- Go backend: Echo v4 + pgxpool + embedded golang-migrate; health endpoints at /health and /api/v1/health; TDD health handler (httptest) - Vue 3 frontend: Vite + TypeScript + Pinia + vue-router + Tailwind CSS v4; TDD HelloWorld component (@vue/test-utils + jsdom + vitest) - Infra: docker-compose postgres:16 with env-interpolated credentials; Makefile with dev-db health-wait loop, migrate-up/down, run, test, fmt - embed.FS migrations at backend/migrations/ (000001 no-op baseline) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
9 lines
294 B
TypeScript
9 lines
294 B
TypeScript
// getHealth calls the backend health endpoint via the Vite proxy (/api → :3000).
|
|
export async function getHealth(): Promise<{ status: string }> {
|
|
const res = await fetch('/api/v1/health')
|
|
if (!res.ok) {
|
|
throw new Error(`health check failed: ${res.status}`)
|
|
}
|
|
return res.json()
|
|
}
|