openvibers/openvibe.tools Commits

Family pages' "Open …" button (.cta) is --on-accent-strong on --accent-strong (openvibe-shared 1.13.0 tokens, 4.5:1 in every theme) instead of white on --accent (3.67:1, axe color-contrast serious on /network-tools, /developer-tools, /image-tools; found by the browser check, WS-Q task 3)

OP OpenVibers committed 26 Sept 2026 · f0307c04c8 · 2 files, +5 −2


Changes

ddiff --git a/apps/gateway/server/pages/site.js b/apps/gateway/server/pages/site.js
iindex da9beb3..fad2c8f 100644
---- a/apps/gateway/server/pages/site.js
++++ b/apps/gateway/server/pages/site.js
@@@ -70,7 +70,7 @@ section{padding:clamp(24px,4vw,44px) 0 0}
.crumbs{font-size:13.5px;color:var(--text-muted,#7d8aa0);padding-top:18px}.crumbs a{color:inherit}
.page-h{display:flex;gap:16px;align-items:center;padding:14px 0 4px}.page-h h1{font-size:clamp(26px,4vw,40px);letter-spacing:-.03em;margin:0;line-height:1.1}
.lead{font-size:clamp(15px,1.5vw,18px);color:var(--text-secondary,#a8b3c4);max-width:820px}
--.cta{display:inline-flex;align-items:center;gap:8px;background:var(--accent,#3b82f6);color:var(--on-accent,#fff);font-weight:700;text-decoration:none;padding:12px 20px;border-radius:12px;margin:6px 0}
++.cta{display:inline-flex;align-items:center;gap:8px;background:var(--accent-strong,#1d4ed8);color:var(--on-accent-strong,#fff);font-weight:700;text-decoration:none;padding:12px 20px;border-radius:12px;margin:6px 0}
.hosts{list-style:none;padding:0;margin:8px 0;display:flex;flex-direction:column;gap:6px;max-width:640px}
.hosts li{display:flex;gap:10px;align-items:center;padding:9px 12px;border:1px solid var(--border,rgba(255,255,255,.08));border-radius:10px;flex-wrap:wrap}
.hosts li.primary{border-color:var(--accent,#3b82f6);background:var(--accent-glow,rgba(59,130,246,.1))}
ddiff --git a/apps/gateway/test/developers-page.test.js b/apps/gateway/test/developers-page.test.js
iindex b4b73c8..3aefdc1 100644
---- a/apps/gateway/test/developers-page.test.js
++++ b/apps/gateway/test/developers-page.test.js
@@@ -1,7 +1,7 @@
'use strict';
// /developers (the Tools API page): its long commands scroll inside their blocks instead of widening the page
// (the browser check, Host scripts/browser-check.js, found the page 858 px wide at 768 px), and a block that
--// scrolls can be reached by keyboard.
++// scrolls can be reached by keyboard. The shared page CSS also carries the family pages' call-to-action.
const assert = require('assert');
const http = require('http');
const express = require('express');
@@@ -20,6 +20,9 @@ const site = require('../server/pages/site');
const pres = html.match(/<pre[^>]*>/g) || [];
assert.ok(pres.length >= 1, 'the page shows commands');
assert.ok(pres.every((p) => p === '<pre tabindex="0">'), 'every block is focusable');
++ // The family pages' "Open …" button: --on-accent-strong on --accent-strong (4.5:1 in every theme), not
++ // white on --accent (3.67:1, axe color-contrast on /network-tools, /developer-tools, /image-tools).
++ assert.ok(html.includes('.cta{display:inline-flex;align-items:center;gap:8px;background:var(--accent-strong,#1d4ed8);color:var(--on-accent-strong,#fff);'));
console.log('developers page: all checks passed');
} finally { srv.close(); }
})().catch((e) => { console.error(e); process.exit(1); });