Fix dogfood pass-2: grid thumbs, AI view, featured/recent dedupe

- Portfolio cards: eager first-page load, cache-safe onLoad via ref,
  soft opacity while loading, error placeholder (no stuck black voids)
- Hide home view chips when primary category has zero projects (AI)
- Seed AI view with showOthers false; home Recent excludes Featured
- Slightly larger scroll-padding under sticky header
This commit is contained in:
2026-08-05 11:59:06 -04:00
parent a2cec1baf1
commit e783fbd846
5 changed files with 62 additions and 18 deletions
+17 -5
View File
@@ -79,11 +79,23 @@ async function main() {
"cad",
"3d-modeling",
]);
await createView("AI", "ai", "AI-generated creative work.", [
"ai-generated-content",
"illustration",
"graphic-design",
]);
{
const view = await prisma.portfolioView.create({
data: {
name: "AI",
slug: "ai",
description: "AI-generated creative work.",
showOthers: false,
},
});
for (const [i, s] of ["ai-generated-content", "illustration", "graphic-design"].entries()) {
const cat = bySlug[s];
if (!cat) continue;
await prisma.portfolioViewCategory.create({
data: { viewId: view.id, categoryId: cat.id, priority: i },
});
}
}
for (const [canonical, short] of Object.entries(aliases)) {
if (short === "3d" || short === "animation" || short === "ai") continue;