Want to audit your own site?
Run Free AuditIMPORTANT: Before running any fixes, verify you are in the correct repository for openpublichub.com. If your current repo URL or project name does not match this domain, STOP and switch to the correct repo. CONTEXT: https://openpublichub.com -- Next.js, Tailwind CSS, deployed on Vercel. 1166 pages audited. 30 issues found. Source: src/app/ (routes), src/components/, src/lib/ Refer to CLAUDE.md for database schema if applicable. Read CLAUDE.md first. If it references external config files, read those too for full context before starting any fixes. Execute immediately. Do not narrate intent. Do not say "I will start by..." — just do it. Read files before editing. Only change specific lines mentioned below. If a file path doesn't exist, skip that fix and document why. DO NOT touch existing UIUX or features unless fixing a confirmed bug below. DO NOT run git commands. npm run build must complete with 0 errors 0 warnings. GOAL: Fix all 30 QA issues found on https://openpublichub.com. ================================================================ CONTENT ================================================================ FIX: [HIGH] Thin content on homepage — under 100 words. Expand with unique content for better rankings. HOW: Locate the homepage route (src/app/page.tsx or equivalent). Add substantive content sections: a "How It Works" explainer, an FAQ section with 3-5 questions, or a brief value proposition paragraph. Target 300+ words of unique, keyword-relevant content. Do NOT remove existing components — add content below or between existing sections. PAGES: / AFFECTED: 2 pages SEVERITY: 5/10 ================================================================ SEO ================================================================ FIX: [MEDIUM] Potential keyword stuffing — "google" appears unusually often in page titles across ads-alternative pages. Keep keyword density under 2%. HOW: Find the metadata generation logic for the /ads-alternative/ route segment (likely src/app/ads-alternative/[slug]/page.tsx or a shared generateMetadata function). Rewrite title templates to use the keyword "google" at most once per title. Replace redundant instances with synonyms or remove them. For example, change "SEO for Corporate Lawyers Complete Guide Without Google Ads" to "SEO for Corporate Lawyers — Complete Guide Without Paid Search Ads". Apply the same pattern across all 21 affected titles by updating the template, not each page individually. PAGES: /ads-alternative/best-alternative-for-local-foot-traffic-without-google-ads-bankruptcy-attorneys, /ads-alternative/seo-for-corporate-lawyers-complete-guide-without-google-ads, /ads-alternative/seo-for-environmental-lawyers-complete-guide-without-google-ads + 18 more AFFECTED: 21 pages SEVERITY: 5/10 FIX: [HIGH] Title too short (28 chars) on /top/top-unicorns. Aim for 50-60 characters. HOW: Locate the metadata for the /top/top-unicorns route (src/app/top/[slug]/page.tsx or src/app/top/top-unicorns/page.tsx). Update the title from its current ~28-character value to a descriptive 50-60 character title, e.g. "Top Unicorn Companies — Billion-Dollar Startups | OpenPublicHub". Ensure the generateMetadata or metadata export reflects this change. PAGES: /top/top-unicorns AFFECTED: 1 page SEVERITY: 5/10 ================================================================ CONVERSION ================================================================ FIX: [MEDIUM] No inline CTA in content body on /membership page. Inline text CTAs achieve 121% higher CTR than sidebar. HOW: Open the /membership page component. Add an inline CTA (e.g. a styled link or button with text like "Start your free trial" or "Compare plans") after the second content section or after approximately 500 words of content. Use an existing Button or CTA component if one exists in src/components/. PAGES: /membership AFFECTED: 1 page SEVERITY: 5/10 FIX: [LOW] No behavioral analytics detected (Clarity, Hotjar, or PostHog) on homepage. HOW: Add Microsoft Clarity (free) by inserting the Clarity tracking script in src/app/layout.tsx using next/script with strategy="afterInteractive". Sign up at clarity.microsoft.com, get the project ID, and add the script tag. Do NOT add to individual pages — layout.tsx covers all routes. PAGES: / AFFECTED: 1 page SEVERITY: 3/10 FIX: [LOW] No CTA in bottom section of homepage. Users who scroll to the bottom are highly engaged. HOW: Add a CTA component (e.g. "Start Researching Companies Free" with a link to /signup) in the homepage (src/app/page.tsx) after the last content section and before the footer. Reuse an existing CTA or Button component from src/components/ if available. PAGES: / AFFECTED: 1 page SEVERITY: 3/10 FIX: [LOW] No sticky/fixed CTA bar on homepage. Mobile sticky CTAs recover 10-15% of abandoning visitors. HOW: Create a lightweight sticky CTA bar component (e.g. src/components/StickyCTA.tsx) that renders a fixed-bottom bar on mobile viewports (visible below md: breakpoint using Tailwind's `md:hidden` inverse — use `block md:hidden` with `fixed bottom-0`). Include a short CTA text and a button linking to /signup. Import and render it in the homepage or layout. Add a dismiss/close button that sets a sessionStorage flag to avoid re-showing. PAGES: / AFFECTED: 1 page SEVERITY: 3/10 FIX: [LOW] No email capture or newsletter signup on homepage. HOW: Add an email capture form section to the homepage (src/app/page.tsx) — a simple input + submit button for newsletter signup. Place it in the bottom third of the page. If no email backend exists yet, wire it to a form handler or use a placeholder action. Mark the component as 'use client' only if it needs interactivity. PAGES: / AFFECTED: 1 page SEVERITY: 3/10 ================================================================ WHAT'S WORKING (preserve these) ================================================================ - All pages use HTTPS - 96% of pages load under 500ms — excellent performance - H1 tags present on 100% of pages - Mobile viewport configured on 100% of pages - Canonical URLs on 100% of pages - Meta descriptions on 100% of pages - Structured data (JSON-LD) on 1163 of 1166 pages - OG images on 100% of pages - Sitemap present with 6964 pages - Robots.txt properly configured with AI bot blocking - Average load time 286ms — well below 3s threshold ================================================================ AFTER FIXES ================================================================ 1. npm run build: 0 errors 0 warnings 2. Push to production 3. Re-audit at https://NexusBro.com to verify score improvement Expected: +15-25 points after implementing all fixes above Generated by NexusBro QA Engine | nexusbro.com