openvibers/openvibe.mediahub Commits

MediaHub: openvibe.download's heading is one sentence, the tagline said once (#46)

OP OpenVibers committed 29 days ago · 0faed25b13 · 2 files, +6 −3

**openvibe.download's heading is one sentence: "Your files, shared on your terms."**

**Why:** the home's h1 read "OpenVibe.Download Your files, shared on your terms.", the brand and the tagline run together. The eyebrow above it repeated the same tagline. A sweep of every home's h1 found this one and Zone's as the only run-ons.

**Change:**
- The hero title is "Your files," with the accent "shared on your terms.".
- The eyebrow is "OpenVibe.MediaHub · a private drive", so the tagline appears once.
- The page `<title>`, description and structured data are unchanged.

**Test:** `layout.test.js` checks that the h1's text is exactly the one sentence.

Changes

ddiff --git a/server/http/pages.js b/server/http/pages.js
iindex 48abdc3..a4630a9 100644
---- a/server/http/pages.js
++++ b/server/http/pages.js
@@@ -143,9 +143,10 @@ ${notice(p && p.detail ? p.detail : 'You are over the limit for this.', 'warn')}
// ── Home ─────────────────────────────────────────────────
r.get('/', (req, res) => {
const hero = showcase.hero({
-- eyebrow: `${SITE_NAME} · ${TAGLINE}`,
-- title: 'OpenVibe.Download',
-- accent: TAGLINE,
++ // One sentence in the heading (it read "OpenVibe.Download Your files, …"), the tagline not said twice.
++ eyebrow: `${SITE_NAME} · a private drive`,
++ title: 'Your files,',
++ accent: 'shared on your terms.',
lede: 'A private drive for your files, with share links you control. Uploads and every file page need a signed-in OpenVibe account — there is no anonymous upload and no anonymous download here.',
actions: signedIn(req)
? [{ label: 'Your files', href: '/files', primary: true }, { label: 'The safety rules', href: '/safety' }]
ddiff --git a/test/layout.test.js b/test/layout.test.js
iindex 342fcc4..b77124f 100644
---- a/test/layout.test.js
++++ b/test/layout.test.js
@@@ -63,6 +63,8 @@ const BOOST = /<script src="\/shared\/boost\.js\?v=[0-9a-f]{12}" data-main="#mai
assert.match(r.headers.get('content-type'), /^text\/html/);
assert.ok(r.text.includes('OpenVibe.MediaHub'), 'the service name is on the page');
assert.ok(r.text.includes('Your files, shared on your terms.'), 'the tagline is on the page');
++ const h1 = (/<h1[^>]*>([\s\S]*?)<\/h1>/.exec(r.text) || [])[1] || '';
++ assert.strictEqual(h1.replace(/<[^>]+>/g, '').replace(/\s+/g, ' ').trim(), 'Your files, shared on your terms.', 'the heading is one sentence');
assert.ok(r.text.includes('/shared/showcase.css'), 'the showcase stylesheet');
assert.ok(!r.text.includes('/home/') && !r.text.includes('/mnt/'), 'no local filesystem path on the page');
});