AV Beat rebrand: theme swap (orange #E67E22 / near-black), logo, schema default → avb

- public/assets/images/logo.png + public/brand/logo*.png replaced with the 1320x310 AV Beat logo
- public/assets/logos/avbeat.png added as the canonical source
- tailwind.config.js + src/styles/tailwind.css + src/styles/redesign-tokens.css palette swapped (primary #0F0E0E, secondary #1D1A1A, accent #E67E22 orange, foreground #F0EBE6 warm white)
- Layout / robots / sitemap / home-page / about / contact / press-kit / team / global-error metadata switched to AV Beat (Where AV Meets IT)
- Bulk replaced 'Broadcast Beat'/'BroadcastBeat.com'/'broadcastbeat.com' across user-facing news/forum/marketplace/advertise/search/newsletter pages
- src/lib/supabase/{admin,server,client} now default to schema 'avb' (was 'bb') — overridable via NEXT_PUBLIC_SUPABASE_SCHEMA
- package.json renamed to 'avbeat'
- Single d60701 reference in about/team swapped to E67E22

Design-only replica — no article content migrated.
This commit is contained in:
Ryan Salazar
2026-06-01 15:30:16 +00:00
parent 6a48473905
commit d67a2bd48d
64 changed files with 522 additions and 519 deletions

View File

@@ -11,9 +11,9 @@ import SidebarAdStack from "@/components/SidebarAdStack";
export const revalidate = 60;
export const metadata: Metadata = {
title: "Search — Broadcast Beat",
title: "Search — AV Beat",
description:
"Search Broadcast Beat for broadcast engineering news, gear reviews, show coverage, and technology insights.",
"Search AV Beat for broadcast engineering news, gear reviews, show coverage, and technology insights.",
alternates: { canonical: "/search" },
};
@@ -36,7 +36,7 @@ export default async function SearchPage({ searchParams }: SearchPageProps) {
<div className="flex-1 h-px bg-[#2a2a2a]" />
</div>
<h1 className="font-heading text-white text-3xl font-bold">
{query ? `Results for "${query}"` : "Search Broadcast Beat"}
{query ? `Results for "${query}"` : "Search AV Beat"}
</h1>
<p className="text-[#777] font-body text-sm mt-2">
{query
@@ -51,7 +51,7 @@ export default async function SearchPage({ searchParams }: SearchPageProps) {
{query && results.length === 0 && (
<div className="py-16 text-center">
<p className="text-[#555] font-body text-sm mb-3">No articles match your search.</p>
<Link href="/news" className="text-[#3b82f6] text-xs font-body hover:underline">
<Link href="/news" className="text-[#E67E22] text-xs font-body hover:underline">
Browse all news
</Link>
</div>
@@ -69,7 +69,7 @@ export default async function SearchPage({ searchParams }: SearchPageProps) {
<div className="flex-shrink-0 w-[160px] h-[105px] relative overflow-hidden rounded-sm">
<AppImage
src={article.image || "/assets/images/article-placeholder.jpg"}
alt={article.alt || article.title || "Broadcast Beat article"}
alt={article.alt || article.title || "AV Beat article"}
fill
className="object-cover group-hover:scale-105 transition-transform duration-300"
sizes="160px"
@@ -77,18 +77,18 @@ export default async function SearchPage({ searchParams }: SearchPageProps) {
</div>
<div className="flex-1 min-w-0">
<div className="flex items-center gap-2 mb-1.5">
<span className="text-[#3b82f6] font-body text-[10px] font-bold uppercase tracking-wider">
<span className="text-[#E67E22] font-body text-[10px] font-bold uppercase tracking-wider">
{article.category || "NEWS"}
</span>
</div>
<h2 className="font-heading text-[#e0e0e0] text-base font-bold leading-snug mb-2 group-hover:text-[#3b82f6] transition-colors line-clamp-2">
<h2 className="font-heading text-[#e0e0e0] text-base font-bold leading-snug mb-2 group-hover:text-[#E67E22] transition-colors line-clamp-2">
{article.title || "Untitled"}
</h2>
<p className="text-[#777] font-body text-sm leading-relaxed line-clamp-2">
{article.excerpt || ""}
</p>
<div className="flex items-center gap-2 mt-2">
<span className="text-[#555] font-body text-xs">By {article.author || "Broadcast Beat"}</span>
<span className="text-[#555] font-body text-xs">By {article.author || "AV Beat"}</span>
<span className="text-[#444] text-[10px]">·</span>
<span className="text-[#555] font-body text-xs">{article.readTime || ""}</span>
</div>