[object Object]

← back to Allnewsdaily

front page: Drudge-style 3-column article layout

85e412639f294a7d661e846928e325632bb7eb84 · 2026-09-09 23:55:08 -0700 · Steve Abrams

Homepage renderFront() now lays the wire out as 3 clean columns (U.S./TOP · WORLD ·
MONEY/TECH) like the Drudge Report — grid repeat(4,1fr)->repeat(3,1fr); moved the
COLUMNISTS/MAGAZINES/DIRECTORY rail out of the article grid into a full-width strip
below (.railstrip). Splash + live refresh + responsive collapse (3->2->1) unchanged.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

Files touched

Diff

commit 85e412639f294a7d661e846928e325632bb7eb84
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Wed Sep 9 23:55:08 2026 -0700

    front page: Drudge-style 3-column article layout
    
    Homepage renderFront() now lays the wire out as 3 clean columns (U.S./TOP · WORLD ·
    MONEY/TECH) like the Drudge Report — grid repeat(4,1fr)->repeat(3,1fr); moved the
    COLUMNISTS/MAGAZINES/DIRECTORY rail out of the article grid into a full-width strip
    below (.railstrip). Splash + live refresh + responsive collapse (3->2->1) unchanged.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
---
 server.js | 26 +++++++++++---------------
 1 file changed, 11 insertions(+), 15 deletions(-)

diff --git a/server.js b/server.js
index 395ba96..5e724b3 100644
--- a/server.js
+++ b/server.js
@@ -135,19 +135,15 @@ ${bannerAd('top')}
   <div id="wire-splash">${splashHtml}</div>
   ${bannerAd('mid')}
   <hr class="rule thin">
-  <div class="grid">
-    <div id="wire-cols" style="display:contents">
-      ${columnsHtml}
-    </div>
-    <aside class="col rail">
-      <h2 class="colhead">COLUMNISTS</h2>
-      ${columnistsHtml}
-      <h2 class="colhead" style="margin-top:22px">MAGAZINES</h2>
-      ${magsHtml}
-      <h2 class="colhead" style="margin-top:22px">DIRECTORY</h2>
-      <a class="railitem" href="/directory">All 98 outlets — live TV &amp; broadcast →</a>
-    </aside>
+  <div class="grid" id="wire-cols">
+    ${columnsHtml}
   </div>
+  <hr class="rule thin">
+  <section class="railstrip">
+    <div class="rcol"><h2 class="colhead">COLUMNISTS</h2>${columnistsHtml}</div>
+    <div class="rcol"><h2 class="colhead">MAGAZINES</h2>${magsHtml}</div>
+    <div class="rcol"><h2 class="colhead">DIRECTORY</h2><a class="railitem" href="/directory">All 98 outlets — live TV &amp; broadcast →</a></div>
+  </section>
   ${bannerAd('bottom')}
 </main>
 
@@ -281,19 +277,19 @@ main{max-width:1180px;margin:0 auto;padding:0 12px 60px}
   font-size:clamp(22px,3.4vw,34px);line-height:1.2;padding:16px 12px 8px;letter-spacing:.3px}
 .splash:hover{text-decoration:underline}.splash.placeholder{color:#888;font-style:italic;text-transform:none}
 .splash .src{color:#7a2a2a;font-weight:400;font-size:.62em}
-.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0 26px}
+.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 26px}
 .col{padding:6px 0 10px;border-left:1px solid #ddd;padding-left:14px}
 .col:first-child{border-left:0;padding-left:0}
 .colhead{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#000;border-bottom:2px solid #000;
   margin:6px 0 8px;padding-bottom:3px;font-family:Arial,Helvetica,sans-serif}
 .story{display:block;padding:5px 0;border-bottom:1px dotted #cfcfcf;font-size:15px;line-height:1.28}
 .story .src{color:var(--src);font-style:italic;font-size:12px}
-.rail{background:#f0efe8}
+.railstrip{display:grid;grid-template-columns:repeat(3,1fr);gap:0 26px;background:#f0efe8;padding:12px 14px;margin-top:4px}.railstrip .rcol{border-left:1px solid #ddd;padding-left:14px}.railstrip .rcol:first-child{border-left:0;padding-left:0}
 .railitem{display:block;padding:4px 0;border-bottom:1px dotted #d5d5cf;font-size:14px}
 .railitem .src{color:var(--src);font-style:italic;font-size:12px}
 .foot{max-width:1180px;margin:0 auto;padding:20px 16px 40px;border-top:3px double #000;font-size:12px;color:#444;text-align:center}
 .foot nav{margin-bottom:8px}.foot nav a{color:var(--link)}
-@media(max-width:960px){.grid{grid-template-columns:repeat(2,1fr)}.col:nth-child(3){border-left:0;padding-left:0}}
+@media(max-width:960px){.grid{grid-template-columns:repeat(2,1fr)}.col:nth-child(3){border-left:0;padding-left:0}.railstrip{grid-template-columns:1fr}.railstrip .rcol{border-left:0;padding-left:0}}
 @media(max-width:560px){.grid{grid-template-columns:1fr}.col{border-left:0;padding-left:0}.masthead{grid-template-columns:1fr}.tagline-l,.tagline-r{text-align:center}}
 /* Live counter / ticker bar */
 .ticker{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;justify-content:center;max-width:1180px;margin:0 auto;padding:6px 16px 4px;font-family:Arial,Helvetica,sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:.6px;color:#333}

← 046bf14 allnewsdaily: PROXY_URL-aware + gzip + early-abort fetch in  ·  back to Allnewsdaily  ·  allnewsdaily: add /videos page embedding channel Shorts + sy 3585c9c →