Skip to content

Commit 57137ab

Browse files
committed
ui(landing): marketing pass — SEO meta + benefit-first hero copy
- Add meta description, Open Graph, and Twitter card tags so links shared on Slack/iMessage/Twitter render a real preview instead of a bare URL. Title also rewritten from brand-only to benefit-led. - Hero subtitle: replace "same-origin HLS streaming" jargon with the privacy benefit (footage stays yours) — same angle the privacy section already leans on, now visible above the fold. - Hero stats: drop HTTPS / HLS / Fly.io (those are protocols, not differentiators a buyer cares about) for Open Source / AES-256 at rest / <10s live latency. - MCP section: "22 tools available" → "20+ tools available" so the marketing page doesn't drift every time we add or remove a tool. - Standardize sign-up CTAs to "Get Started Free" with the arrow icon. The final CTA was using a GitHub icon on a sign-up button, which read like the button went to the repo.
1 parent c542eaa commit 57137ab

2 files changed

Lines changed: 29 additions & 14 deletions

File tree

frontend/index.html

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,22 @@
44
<meta charset="UTF-8" />
55
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
66
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
7-
<title>SourceBox Sentry Command Center</title>
7+
<meta name="theme-color" content="#0a0a0a" />
8+
<meta name="description" content="Private security camera system. Cloud-hosted, end-to-end encrypted, with motion detection that runs on your hardware — not in someone else's cloud." />
9+
10+
<meta property="og:type" content="website" />
11+
<meta property="og:site_name" content="SourceBox Sentry" />
12+
<meta property="og:title" content="SourceBox Sentry — Private Security Camera System" />
13+
<meta property="og:description" content="Cloud-hosted surveillance where your footage never leaves your network for AI. Open source, encrypted at rest, multi-tenant from day one." />
14+
<meta property="og:image" content="/favicon.svg" />
15+
<meta property="og:url" content="https://opensentry-command.fly.dev/" />
16+
17+
<meta name="twitter:card" content="summary" />
18+
<meta name="twitter:title" content="SourceBox Sentry — Private Security Camera System" />
19+
<meta name="twitter:description" content="Cloud-hosted surveillance where your footage never leaves your network for AI. Open source, encrypted at rest, multi-tenant from day one." />
20+
<meta name="twitter:image" content="/favicon.svg" />
21+
22+
<title>SourceBox Sentry — Private Security Camera System</title>
823
</head>
924
<body>
1025
<div id="root"></div>

frontend/src/pages/LandingPage.jsx

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -53,12 +53,12 @@ function LandingPage() {
5353
Private Security<br />Camera System
5454
</h1>
5555
<p className="landing-hero-subtitle">
56-
Cloud-hosted surveillance with <strong>same-origin HLS streaming</strong>.
57-
Multi-tenant organizations with role-based access. Your cameras, accessible from anywhere.
56+
Watch your cameras from anywhere — without handing your footage to a vendor's
57+
AI. Motion detection runs on your hardware. <strong>Recordings stay yours.</strong>
5858
</p>
5959
<div className="landing-hero-actions">
6060
<Link to="/sign-up" className="landing-btn landing-btn-primary landing-btn-lg">
61-
Get Started
61+
Get Started Free
6262
<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2">
6363
<path d="M5 12h14M12 5l7 7-7 7"/>
6464
</svg>
@@ -69,16 +69,16 @@ function LandingPage() {
6969
</div>
7070
<div className="landing-hero-stats">
7171
<div className="landing-stat">
72-
<span className="landing-stat-value">HTTPS</span>
73-
<span className="landing-stat-label">Web UI</span>
72+
<span className="landing-stat-value">Open</span>
73+
<span className="landing-stat-label">Source</span>
7474
</div>
7575
<div className="landing-stat">
76-
<span className="landing-stat-value">HLS</span>
77-
<span className="landing-stat-label">Streaming</span>
76+
<span className="landing-stat-value">AES-256</span>
77+
<span className="landing-stat-label">At Rest</span>
7878
</div>
7979
<div className="landing-stat">
80-
<span className="landing-stat-value">Fly.io</span>
81-
<span className="landing-stat-label">Global Edge</span>
80+
<span className="landing-stat-value">&lt;10s</span>
81+
<span className="landing-stat-label">Live Latency</span>
8282
</div>
8383
</div>
8484
</div>
@@ -568,7 +568,7 @@ function LandingPage() {
568568
}`}</pre>
569569
</div>
570570
<div className="landing-mcp-tools-count">
571-
<span>22</span> tools available
571+
<span>20+</span> tools available
572572
</div>
573573
</div>
574574
</div>
@@ -585,10 +585,10 @@ function LandingPage() {
585585
</p>
586586
<div className="landing-cta-actions">
587587
<Link to="/sign-up" className="landing-btn landing-btn-primary landing-btn-lg">
588-
<svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
589-
<path d="M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0024 12c0-6.63-5.37-12-12-12z"/>
588+
Get Started Free
589+
<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2">
590+
<path d="M5 12h14M12 5l7 7-7 7"/>
590591
</svg>
591-
Get Command Center
592592
</Link>
593593
<a
594594
href="https://github.com/SourceBox-LLC/opensentry-cloud-node"

0 commit comments

Comments
 (0)