chore: commit pending ZXDB explorer changes prior to index perf work

Context
- Housekeeping commit to capture all current ZXDB Explorer work before index-page performance optimizations.

Includes
- Server-rendered entry detail page with ISR and parallelized DB queries.
- Node runtime for ZXDB API routes and params validation updates for Next 15.
- ZXDB repository extensions (facets, label queries, category queries).
- Cross-linking and Link-based prefetch across ZXDB UI.
- Cache headers on low-churn list APIs.

Notes
- Follow-up commit will focus specifically on speeding up index pages via SSR initial data and ISR.

Signed-off-by: Junie@lucy.xalior.com
This commit is contained in:
2025-12-12 15:25:35 +00:00
parent 3fe6f980c6
commit ad77b47117
27 changed files with 258 additions and 249 deletions

View File

@@ -1,6 +1,7 @@
"use client";
import { useEffect, useMemo, useState } from "react";
import Link from "next/link";
type Item = {
id: number;
@@ -156,7 +157,7 @@ export default function ZxdbExplorer() {
<tr key={it.id}>
<td>{it.id}</td>
<td>
<a href={`/zxdb/entries/${it.id}`}>{it.title}</a>
<Link href={`/zxdb/entries/${it.id}`}>{it.title}</Link>
</td>
<td>{it.machinetypeId ?? "-"}</td>
<td>{it.languageId ?? "-"}</td>
@@ -190,10 +191,10 @@ export default function ZxdbExplorer() {
<hr />
<div className="d-flex flex-wrap gap-2">
<a className="btn btn-sm btn-outline-secondary" href="/zxdb/labels">Browse Labels</a>
<a className="btn btn-sm btn-outline-secondary" href="/zxdb/genres">Browse Genres</a>
<a className="btn btn-sm btn-outline-secondary" href="/zxdb/languages">Browse Languages</a>
<a className="btn btn-sm btn-outline-secondary" href="/zxdb/machinetypes">Browse Machines</a>
<Link className="btn btn-sm btn-outline-secondary" href="/zxdb/labels">Browse Labels</Link>
<Link className="btn btn-sm btn-outline-secondary" href="/zxdb/genres">Browse Genres</Link>
<Link className="btn btn-sm btn-outline-secondary" href="/zxdb/languages">Browse Languages</Link>
<Link className="btn btn-sm btn-outline-secondary" href="/zxdb/machinetypes">Browse Machines</Link>
</div>
</div>
);