Files
immich-folio/app/api/health/route.ts
ralksta 52fa16c1c8 feat: visual polish & UX — fade-in, theme toggle, scroll-to-top, footer, cursor, badge
- Add FadeIn component (IntersectionObserver scroll-reveal + load animation)
- Add dark/light theme toggle (useSyncExternalStore + localStorage)
- Add scroll-to-top button (appears after 300px scroll)
- Add configurable footer with social links (gallery.yaml)
- Add crosshair cursor on photo grid items
- Add 'X photos' count badge on subpage cover images
- Add light theme color palette in tokens.css
2026-02-14 11:47:26 +01:00

27 lines
687 B
TypeScript

/**
* Health check endpoint — reports app and Immich connectivity status.
* Used by Docker HEALTHCHECK, monitoring tools, and load balancers.
*
* GET /api/health → { status, immich, uptime }
*/
import { NextResponse } from 'next/server';
import { immich } from '@/lib/immich';
const startTime = Date.now();
export async function GET() {
const immichOk = await immich.ping();
const body = {
status: immichOk ? 'ok' : 'degraded',
immich: immichOk ? 'connected' : 'unreachable',
uptime: Math.floor((Date.now() - startTime) / 1000),
};
return NextResponse.json(body, {
status: immichOk ? 200 : 503,
headers: { 'Cache-Control': 'no-store' },
});
}