forum: user profile pages + clickable bylines + neon pulse favicon
USER PROFILES (/forum/user/[username]): - New API at /api/forum/user-by-username/[username] resolves by username OR display_name (URL-encoded), since forum threads/replies store author_name = display_name. Returns the persona's profile, thread history (up to 50), and recent replies (up to 20). - New page renders the persona card with archetype badge (Audio Engineer / Colorist / etc.) + expertise level badge (beginner/intermediate/senior) + role title, company, location, years_experience, join date, and an expertise-tags chip row. - Two columns underneath: "Threads started" and "Recent replies" with proper deep-links into each thread. - Author names in /forum, /forum/[slug], and /forum/thread/[id] are now <Link> elements pointing to /forum/user/<displayname>, with onClick=stopPropagation so the card-level click handler doesn't also fire. FAVICON: - Hand-built neon pulse waveform — emerald→cyan→purple gradient on dark navy background, designed to read at 16×16 to 256×256. - Multi-resolution favicon.ico (16/32/48/64) + SVG + PNGs at 16/32/48/64/96/192/256 under /static/favicons/. - layout.tsx icons block now references all sizes including the apple-touch sizes (192, 256). No env / DB changes here — pure deploy.
This commit is contained in:
@@ -17,8 +17,15 @@ export const metadata: Metadata = {
|
||||
description: 'The digital platform for broadcast engineering professionals. Breaking news, deep-dive features, and industry spotlights from NAB to IBC and beyond.',
|
||||
icons: {
|
||||
icon: [
|
||||
{ url: '/favicon.ico', type: 'image/x-icon' }]
|
||||
|
||||
{ url: '/favicon.ico', type: 'image/x-icon', sizes: 'any' },
|
||||
{ url: '/static/favicons/favicon.svg', type: 'image/svg+xml' },
|
||||
{ url: '/static/favicons/favicon-32.png', type: 'image/png', sizes: '32x32' },
|
||||
{ url: '/static/favicons/favicon-16.png', type: 'image/png', sizes: '16x16' },
|
||||
],
|
||||
apple: [
|
||||
{ url: '/static/favicons/favicon-192.png', sizes: '180x180' },
|
||||
{ url: '/static/favicons/favicon-256.png', sizes: '256x256' },
|
||||
],
|
||||
},
|
||||
alternates: {
|
||||
canonical: '/',
|
||||
|
||||
Reference in New Issue
Block a user