[object Object]

← back to Brand Selector Viewer

fix: add rel=noopener noreferrer to all target=_blank links in horsemen.html; add backup file patterns to .gitignore

2f04650d83a55f699eacf596fb56e4a75035ad84 · 2026-05-30 23:48:37 -0700 · SteveStudio2

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

Files touched

Diff

commit 2f04650d83a55f699eacf596fb56e4a75035ad84
Author: SteveStudio2 <stevestudio2@SteveStacStudio.lan>
Date:   Sat May 30 23:48:37 2026 -0700

    fix: add rel=noopener noreferrer to all target=_blank links in horsemen.html; add backup file patterns to .gitignore
    
    Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
---
 .gitignore    |  8 ++++++++
 horsemen.html | 24 ++++++++++++------------
 2 files changed, 20 insertions(+), 12 deletions(-)

diff --git a/.gitignore b/.gitignore
index 9ae81e0..f92f94d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -23,3 +23,11 @@ venv/
 *.swp
 .qodo/
 out/
+*.bak
+*.bak-*
+*.pre-*
+*.orig
+*.save
+*.old
+*~
+copy-of-*
diff --git a/horsemen.html b/horsemen.html
index a104db5..c81ecfa 100644
--- a/horsemen.html
+++ b/horsemen.html
@@ -346,10 +346,10 @@
         <div class="row"><span class="k">Artboard</span><span class="v">1-0 · 1440 × fit-content (~2200)</span></div>
         <div class="row"><span class="k">Layers</span><span class="v">30 cards · 3 selected · sticky dock</span></div>
         <div class="row"><span class="k">Fonts</span><span class="v">Didot · Cormorant · Inter</span></div>
-        <div class="row"><span class="k">URL</span><a href="https://app.paper.design/file/01KQA7KRG8FDP7RH2WXPJYDFNQ" target="_blank">app.paper.design/…01KQA7KRG8FDP7RH2WXPJYDFNQ</a></div>
+        <div class="row"><span class="k">URL</span><a href="https://app.paper.design/file/01KQA7KRG8FDP7RH2WXPJYDFNQ" target="_blank" rel="noopener noreferrer">app.paper.design/…01KQA7KRG8FDP7RH2WXPJYDFNQ</a></div>
       </div>
       <div class="actions">
-        <a class="btn primary" href="https://app.paper.design/file/01KQA7KRG8FDP7RH2WXPJYDFNQ" target="_blank">Open in Paper →</a>
+        <a class="btn primary" href="https://app.paper.design/file/01KQA7KRG8FDP7RH2WXPJYDFNQ" target="_blank" rel="noopener noreferrer">Open in Paper →</a>
         <button class="btn" data-view="paper">View summary</button>
       </div>
     </div>
@@ -375,12 +375,12 @@
         <div class="row"><span class="k">Auth</span><span class="v">steve@designerwallcoverings.com ✓</span></div>
         <div class="row"><span class="k">Tokens</span><span class="v">color · type · radius · spacing · components</span></div>
         <div class="row"><span class="k">Schema</span><span class="v">figma-build/brand-selection.v1</span></div>
-        <div class="row"><span class="k">URL</span><a href="https://www.figma.com/design/Dr1u75PIPSjMJTb2eidqUu?node-id=24-2" target="_blank">figma.com/design/…?node-id=24-2</a></div>
+        <div class="row"><span class="k">URL</span><a href="https://www.figma.com/design/Dr1u75PIPSjMJTb2eidqUu?node-id=24-2" target="_blank" rel="noopener noreferrer">figma.com/design/…?node-id=24-2</a></div>
       </div>
       <div class="actions">
-        <a class="btn primary" href="https://www.figma.com/design/Dr1u75PIPSjMJTb2eidqUu?node-id=24-2" target="_blank">Open in Figma →</a>
+        <a class="btn primary" href="https://www.figma.com/design/Dr1u75PIPSjMJTb2eidqUu?node-id=24-2" target="_blank" rel="noopener noreferrer">Open in Figma →</a>
         <button class="btn" data-view="figma">View token JSON</button>
-        <a class="btn" href="outputs/figma-tokens.json" target="_blank">Raw .json</a>
+        <a class="btn" href="outputs/figma-tokens.json" target="_blank" rel="noopener noreferrer">Raw .json</a>
       </div>
     </div>
   </article>
@@ -403,14 +403,14 @@
         <div class="row"><span class="k">File</span><span class="v">outputs/magic-BrandSelector.tsx</span></div>
         <div class="row"><span class="k">Stack</span><span class="v">React 18 + Tailwind, props-driven</span></div>
         <div class="row"><span class="k">Export</span><span class="v">default BrandSelector</span></div>
-        <div class="row"><span class="k">Live demo</span><a href="magic-app.html" target="_blank">magic-app.html (live React)</a></div>
-        <div class="row"><span class="k">Plain HTML</span><a href="index.html" target="_blank">index.html (vanilla version)</a></div>
+        <div class="row"><span class="k">Live demo</span><a href="magic-app.html" target="_blank" rel="noopener noreferrer">magic-app.html (live React)</a></div>
+        <div class="row"><span class="k">Plain HTML</span><a href="index.html" target="_blank" rel="noopener noreferrer">index.html (vanilla version)</a></div>
       </div>
       <div class="actions">
-        <a class="btn primary" href="magic-app.html" target="_blank">Open live React →</a>
+        <a class="btn primary" href="magic-app.html" target="_blank" rel="noopener noreferrer">Open live React →</a>
         <button class="btn" data-view="magic">View component code</button>
-        <a class="btn" href="outputs/magic-BrandSelector.tsx" target="_blank">Raw .tsx</a>
-        <a class="btn" href="index.html" target="_blank">Vanilla HTML</a>
+        <a class="btn" href="outputs/magic-BrandSelector.tsx" target="_blank" rel="noopener noreferrer">Raw .tsx</a>
+        <a class="btn" href="index.html" target="_blank" rel="noopener noreferrer">Vanilla HTML</a>
       </div>
     </div>
   </article>
@@ -458,10 +458,10 @@
         <div class="row"><span class="k">Template</span><span class="v">dw-brand-selector-v1 (proposed)</span></div>
         <div class="row"><span class="k">Formats</span><span class="v">IG 1080×1350 · LI 1200×628 · PDF</span></div>
         <div class="row"><span class="k">Auth</span><span class="v">awaiting `canva login`</span></div>
-        <div class="row"><span class="k">Brief</span><a href="outputs/canva-brief.md" target="_blank">outputs/canva-brief.md</a></div>
+        <div class="row"><span class="k">Brief</span><a href="outputs/canva-brief.md" target="_blank" rel="noopener noreferrer">outputs/canva-brief.md</a></div>
       </div>
       <div class="actions">
-        <a class="btn primary" href="https://canva.com/" target="_blank">Open Canva →</a>
+        <a class="btn primary" href="https://canva.com/" target="_blank" rel="noopener noreferrer">Open Canva →</a>
         <button class="btn" data-view="canva">View brief</button>
       </div>
     </div>

← 01d9cf8 Add error handling to output-viewer fetch so missing/file://  ·  back to Brand Selector Viewer  ·  (newest)