99< meta name ="apple-mobile-web-app-title " content ="Study Hub ">
1010< title > realmathmodel — study hub</ title >
1111
12- <!-- FontAwesome (icons referenced by class in contents .json) -->
12+ <!-- FontAwesome (icons referenced by class in study .json) -->
1313< link rel ="stylesheet " href ="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css " crossorigin ="anonymous " referrerpolicy ="no-referrer ">
1414
1515< link rel ="apple-touch-icon " href ="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Crect width='180' height='180' rx='38' fill='%230B1220'/%3E%3Ctext x='26' y='118' font-family='monospace' font-size='62' fill='%23E0B23C'%3E%26gt;_%3C/text%3E%3C/svg%3E ">
189189 < span class ="termtitle " id ="ttl "> < i class ="fa-solid fa-terminal "> </ i > realmathmodel — bash — 80×24</ span >
190190 </ div >
191191 < div class ="termbody " id ="app ">
192- < div class ="loading "> < i class ="fa-solid fa-circle-notch fa-spin "> </ i > loading Contents …</ div >
192+ < div class ="loading "> < i class ="fa-solid fa-circle-notch fa-spin "> </ i > loading study.json …</ div >
193193 </ div >
194194 </ div >
195195</ div >
@@ -214,7 +214,7 @@ <h2 id="mTitle">Open this page?</h2>
214214< script >
215215/* ============================================================================
216216 realmathmodel — study hub
217- Content lives in (loaded at runtime). Structure:
217+ Content lives in study.json (loaded at runtime). Structure:
218218 category -> (children:[...] | resources:[...])
219219 resource: {label, href, type:"internal"|"external", note}
220220 icons are FontAwesome class strings, e.g. "fa-solid fa-code".
@@ -281,7 +281,7 @@ <h2 id="mTitle">Open this page?</h2>
281281 var k = c . children . length ;
282282 app . innerHTML = header + '<div class="label">' + k + ' area' + ( k === 1 ?'' :'s' ) + '</div>' +
283283 ( k ?'<div class="grid">' + c . children . map ( cardHtml ) . join ( '' ) + '</div>' :
284- '<p class="miss">No sub-areas yet — add some under <code>' + esc ( c . id ) + '</code> in <code></code>.</p>' ) +
284+ '<p class="miss">No sub-areas yet — add some under <code>' + esc ( c . id ) + '</code> in <code>study.json </code>.</p>' ) +
285285 '<p class="foot"><i class="fa-brands fa-github"></i> realmathmodel.github.io</p>' ;
286286 return ;
287287 }
@@ -302,7 +302,7 @@ <h2 id="mTitle">Open this page?</h2>
302302
303303 app . innerHTML = header + '<div class="label">' + res . length + ' resource' + ( res . length === 1 ?'' :'s' ) + '</div>' +
304304 '<div class="list">' + rows + '</div>' +
305- '<p class="note"><b>INT</b> = page in this repo · <b>EXT</b> = outside site (new tab) · <b>TODO</b> = add the file then set its <code>href</code> in .</p>' +
305+ '<p class="note"><b>INT</b> = page in this repo · <b>EXT</b> = outside site (new tab) · <b>TODO</b> = add the file then set its <code>href</code> in study.json .</p>' +
306306 '<p class="foot"><i class="fa-brands fa-github"></i> realmathmodel.github.io</p>' ;
307307
308308 /* wire confirm-before-leave on every real resource link */
@@ -368,7 +368,7 @@ <h2 id="mTitle">Open this page?</h2>
368368 renderNode ( path ) ;
369369}
370370
371- /* ---------- boot: load ---------- */
371+ /* ---------- boot: load study.json ---------- */
372372function boot ( data ) {
373373 cats = data . categories || [ ] ;
374374 owner = data . owner || owner ; host = data . host || host ; tagline = data . tagline || tagline ;
@@ -378,14 +378,14 @@ <h2 id="mTitle">Open this page?</h2>
378378function bootError ( detail ) {
379379 ttl . innerHTML = '<i class="fa-solid fa-triangle-exclamation"></i> error — bash' ;
380380 app . innerHTML = '<h1>Study <span class="ac">Hub</span></h1>' +
381- '<div class="errbox"><b><i class="fa-solid fa-triangle-exclamation"></i> Could not load </b><br><br>' +
382- 'The hub reads its content from <code></code>, which a browser only fetches over <code>http(s)</code> — not from a <code>file://</code> path.' +
381+ '<div class="errbox"><b><i class="fa-solid fa-triangle-exclamation"></i> Could not load study.json </b><br><br>' +
382+ 'The hub reads its content from <code>study.json </code>, which a browser only fetches over <code>http(s)</code> — not from a <code>file://</code> path.' +
383383 '<br><br><b style="color:var(--muted)">Fix — pick one:</b><br>' +
384384 '• Push to GitHub Pages (it just works there), or<br>' +
385385 '• Serve locally: <code>python -m http.server</code> then open <code>http://localhost:8000</code>' +
386386 '<br><br><span style="color:var(--faint);font-family:var(--mono);font-size:11px">' + esc ( detail || '' ) + '</span></div>' ;
387387}
388- fetch ( '' , { cache :'no-store' } )
388+ fetch ( 'study.json ' , { cache :'no-store' } )
389389 . then ( function ( res ) { if ( ! res . ok ) throw new Error ( 'HTTP ' + res . status ) ; return res . json ( ) ; } )
390390 . then ( boot )
391391 . catch ( function ( err ) { bootError ( String ( err && err . message || err ) ) ; } ) ;
0 commit comments