Rework the landing page: sections, icons, SEO meta tags

Rewrites the marketing copy around outcomes (find competitors by
product/market, tech stack, backlinks, subdomains) rather than
mentioning Common Crawl as the data source. Adds a stats strip (real
site/page/backlink counts), a 4-feature grid with inline SVG icons,
and a 3-step "how it works" section.

Layout now supports a per-page :description prop and emits meta
description, Open Graph, Twitter card, and canonical tags — falls
back to a sensible site-wide description when a page doesn't set one.
Heading structure is a single h1 with h2 section headers, for SEO.

Verified over real HTTP: no "Common Crawl" mention anywhere on the
page, all meta/OG/Twitter/canonical tags present and correct, heading
hierarchy clean, all 4 SVG icons well-formed, CTAs intact. Full test
suite (31 tests) still passes.
This commit is contained in:
m105
2026-07-25 15:50:46 +03:00
parent 72b87ab579
commit 4f26f840aa
2 changed files with 151 additions and 8 deletions
@@ -4,7 +4,24 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
@php
$metaDescription = $description ?? 'Huginn helps you find and analyze your real online competitors — by product, market, and the technology they run on.';
@endphp
<title>{{ isset($title) ? $title.' — ' : '' }}{{ config('app.name', 'Huginn') }}</title>
<meta name="description" content="{{ $metaDescription }}">
<meta property="og:type" content="website">
<meta property="og:site_name" content="{{ config('app.name', 'Huginn') }}">
<meta property="og:title" content="{{ isset($title) ? $title.' — ' : '' }}{{ config('app.name', 'Huginn') }}">
<meta property="og:description" content="{{ $metaDescription }}">
<meta property="og:url" content="{{ url()->current() }}">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="{{ isset($title) ? $title.' — ' : '' }}{{ config('app.name', 'Huginn') }}">
<meta name="twitter:description" content="{{ $metaDescription }}">
<link rel="canonical" href="{{ url()->current() }}">
<link rel="preconnect" href="https://fonts.bunny.net">
<link href="https://fonts.bunny.net/css?family=instrument-sans:400,500,600&display=swap" rel="stylesheet">