70 lines
No EOL
2 KiB
HTML
Executable file
70 lines
No EOL
2 KiB
HTML
Executable file
<!DOCTYPE html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
||
<title>The Fold Within</title>
|
||
|
||
<!-- Tight CSP: scripts only from 'self' now that libs are vendored -->
|
||
<meta http-equiv="Content-Security-Policy"
|
||
content="default-src 'self';
|
||
script-src 'self';
|
||
style-src 'self' 'unsafe-inline';
|
||
img-src 'self' data:;
|
||
frame-src 'self';
|
||
connect-src 'self';">
|
||
|
||
<link rel="stylesheet" href="/styles.css">
|
||
|
||
<!-- Local, vendored libraries (load before app.js so they’re ready) -->
|
||
<script src="/lib/marked.min.js"></script>
|
||
<script src="/lib/purify.min.js"></script>
|
||
</head>
|
||
|
||
<body>
|
||
<header class="topbar">
|
||
<button id="navToggle">☰</button>
|
||
<a href="/">Home</a>
|
||
<a href="/about/">About</a>
|
||
<a href="/essays/">Essays</a>
|
||
<a href="/fieldnotes/">Fieldnotes</a>
|
||
</header>
|
||
|
||
<aside class="sidebar">
|
||
<div class="controls">
|
||
<select id="filter"></select>
|
||
<select id="sort">
|
||
<option value="new">Newest</option>
|
||
<option value="old">Oldest</option>
|
||
<option value="name">Name</option>
|
||
</select>
|
||
</div>
|
||
<input id="search" type="text" placeholder="Search titles...">
|
||
<nav id="tree"></nav>
|
||
</aside>
|
||
|
||
<div class="overlay"></div>
|
||
|
||
<main class="content">
|
||
<div id="meta" class="meta"></div>
|
||
|
||
<!-- Visible warning if markdown falls back -->
|
||
<div id="mdWarn" class="md-warn" style="display:none;">
|
||
Markdown fallback in effect (parser not available).
|
||
</div>
|
||
|
||
<div id="mdView" class="viewer" style="display:none;"></div>
|
||
<iframe id="htmlView"
|
||
sandbox="allow-scripts allow-forms allow-popups allow-modals allow-downloads"
|
||
style="display:none;"></iframe>
|
||
|
||
<div class="pager">
|
||
<button id="prev">← Prev</button>
|
||
<button id="next">Next →</button>
|
||
</div>
|
||
</main>
|
||
|
||
<!-- App logic last -->
|
||
<script src="/app.js"></script>
|
||
</body>
|
||
</html> |