feat: release meme protocol v1.1.0
Add one-click meme copying, complete viewer actions, fixed-footer pagination, protocol lore, and the Homo Reseticus download chooser. Install dedicated social and favicon assets, expand local demo data, and synchronize the changelog, documentation, package, and OpenAPI release metadata.
This commit is contained in:
+81
-14
@@ -9,7 +9,7 @@
|
||||
<meta name="application-name" content="__SEO_TITLE__">
|
||||
<meta name="theme-color" content="#00ff41">
|
||||
<link rel="canonical" href="__SEO_CANONICAL__">
|
||||
<link rel="manifest" href="/site.webmanifest">
|
||||
<link rel="manifest" href="/site.webmanifest?v=20260814">
|
||||
<link rel="service-desc" type="application/openapi+json" href="/openapi.json">
|
||||
<link rel="help" type="text/markdown" href="/meme-api.skill.md">
|
||||
<meta property="og:type" content="website">
|
||||
@@ -18,10 +18,20 @@
|
||||
<meta property="og:description" content="__SEO_DESCRIPTION__">
|
||||
<meta property="og:url" content="__SEO_CANONICAL__">
|
||||
<meta property="og:image" content="__SEO_IMAGE__">
|
||||
<meta property="og:image:type" content="__SEO_IMAGE_TYPE__">
|
||||
<meta property="og:image:width" content="__SEO_IMAGE_WIDTH__">
|
||||
<meta property="og:image:height" content="__SEO_IMAGE_HEIGHT__">
|
||||
<meta property="og:image:alt" content="__SEO_IMAGE_ALT__">
|
||||
<meta name="twitter:card" content="summary_large_image">
|
||||
<meta name="twitter:title" content="__SEO_TITLE__">
|
||||
<meta name="twitter:description" content="__SEO_DESCRIPTION__">
|
||||
<meta name="twitter:image" content="__SEO_IMAGE__">
|
||||
<meta name="twitter:image:alt" content="__SEO_IMAGE_ALT__">
|
||||
<link rel="icon" type="image/svg+xml" href="/assets/favicon/favicon.svg?v=20260814">
|
||||
<link rel="icon" type="image/png" sizes="96x96" href="/assets/favicon/favicon-96x96.png?v=20260814">
|
||||
<link rel="shortcut icon" href="/favicon.ico?v=20260814">
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png?v=20260814">
|
||||
<meta name="apple-mobile-web-app-title" content="Meme Protocol">
|
||||
<link rel="preconnect" href="https://fonts.googleapis.com">
|
||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||
<link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:wght,FILL@100..700,0..1&display=swap" rel="stylesheet">
|
||||
@@ -32,12 +42,15 @@
|
||||
<body>
|
||||
<header class="topbar">
|
||||
<div class="brand">THE_MEME_PROTOCOL</div>
|
||||
<button class="primary-action" id="open-upload" type="button">SUBMIT</button>
|
||||
<button class="primary-action" id="open-upload" type="button">ADD MEME</button>
|
||||
</header>
|
||||
|
||||
<main class="shell">
|
||||
<div class="status-line" aria-live="polite">
|
||||
<span>PROTOCOL_STREAM_V.1.04</span>
|
||||
<nav class="protocol-menu" aria-label="Protocol menu">
|
||||
<button id="open-pet" type="button">DOWNLOAD PET</button>
|
||||
<button id="open-lore" type="button">READ LORE</button>
|
||||
</nav>
|
||||
<span class="live"><span class="pulse"></span>LIVE_FEED</span>
|
||||
</div>
|
||||
|
||||
@@ -56,14 +69,15 @@
|
||||
<span id="feed-loader-label">FETCHING_NEXT_BLOCK...</span>
|
||||
</div>
|
||||
|
||||
<footer class="repo-footer">
|
||||
<a href="https://git.yoonect.com/Nautilus/bitsforfree" rel="noopener noreferrer" target="_blank">
|
||||
<img src="/assets/yoonect-logo.png" alt="" aria-hidden="true">
|
||||
<span>SOURCE</span>
|
||||
</a>
|
||||
</footer>
|
||||
</main>
|
||||
|
||||
<footer class="repo-footer">
|
||||
<a href="https://git.yoonect.com/Nautilus/bitsforfree" rel="noopener noreferrer" target="_blank">
|
||||
<img src="/assets/yoonect-logo.png" alt="" aria-hidden="true">
|
||||
<span>SOURCE</span>
|
||||
</a>
|
||||
</footer>
|
||||
|
||||
<aside class="side-terminal" aria-live="polite">
|
||||
<div>STATUS: <span data-stat="status">SYNCING</span></div>
|
||||
<div>LATENCY: <span data-stat="latency">--MS</span></div>
|
||||
@@ -79,7 +93,7 @@
|
||||
<dialog class="modal" id="upload-modal" aria-labelledby="upload-title">
|
||||
<form class="modal-panel" id="upload-form" method="dialog">
|
||||
<div class="modal-header">
|
||||
<h2 id="upload-title">SUBMIT_MEME</h2>
|
||||
<h2 id="upload-title">ADD_MEME</h2>
|
||||
<button class="icon-action" id="close-upload" type="button" aria-label="Close">X</button>
|
||||
</div>
|
||||
<label class="file-drop" for="meme-input">
|
||||
@@ -96,7 +110,7 @@
|
||||
</div>
|
||||
<div class="modal-actions">
|
||||
<button class="secondary-action" id="cancel-upload" type="button">CANCEL</button>
|
||||
<button class="primary-action" id="submit-upload" type="submit">UPLOAD</button>
|
||||
<button class="primary-action" id="add-meme-button" type="submit">ADD MEME</button>
|
||||
</div>
|
||||
<p class="form-status" id="form-status" role="status"></p>
|
||||
</form>
|
||||
@@ -109,9 +123,60 @@
|
||||
</div>
|
||||
<img id="lightbox-image" alt="">
|
||||
<div class="lightbox-actions">
|
||||
<a class="text-action icon-only-action" id="lightbox-download" href="#" aria-label="Download meme" title="Download meme"><span class="material-symbols-outlined" aria-hidden="true">download</span></a>
|
||||
<button class="text-action icon-only-action" id="lightbox-share" type="button" aria-label="Share meme" title="Share meme"><span class="material-symbols-outlined" aria-hidden="true">share</span></button>
|
||||
<div class="stats">
|
||||
<span class="card-stat" id="lightbox-view-count"><span class="material-symbols-outlined" aria-hidden="true">visibility</span><span data-count>0</span></span>
|
||||
<span class="card-stat" id="lightbox-download-count"><span class="material-symbols-outlined" aria-hidden="true">download</span><span data-count>0</span></span>
|
||||
</div>
|
||||
<div class="action-group">
|
||||
<button class="text-action icon-only-action" id="lightbox-copy" type="button" aria-label="Copy meme image" title="Copy meme image"><span class="material-symbols-outlined" aria-hidden="true">content_copy</span></button>
|
||||
<a class="text-action icon-only-action" id="lightbox-download" href="#" aria-label="Download meme" title="Download meme"><span class="material-symbols-outlined" aria-hidden="true">download</span></a>
|
||||
<button class="text-action icon-only-action" id="lightbox-share" type="button" aria-label="Share meme" title="Share meme"><span class="material-symbols-outlined" aria-hidden="true">share</span></button>
|
||||
</div>
|
||||
</div>
|
||||
<p class="viewer-status" data-action-status role="status" aria-live="polite"></p>
|
||||
</dialog>
|
||||
|
||||
<dialog class="modal" id="pet-modal" aria-labelledby="pet-title">
|
||||
<div class="modal-panel pet-panel">
|
||||
<div class="modal-header">
|
||||
<h2 id="pet-title">DOWNLOAD_PET</h2>
|
||||
<button class="icon-action" id="close-pet" type="button" aria-label="Close">X</button>
|
||||
</div>
|
||||
<div class="pet-downloads">
|
||||
<p class="pet-prompt">SELECT_PET_BUILD</p>
|
||||
<a class="pet-download" href="/assets/downloads/homo-reseticus.zip" download="homo-reseticus.zip">
|
||||
<span>
|
||||
<strong>HOMO_RESETICUS</strong>
|
||||
<small>ORIGINAL // ZIP // 805 KB</small>
|
||||
</span>
|
||||
<span class="material-symbols-outlined" aria-hidden="true">download</span>
|
||||
</a>
|
||||
<a class="pet-download" href="/assets/downloads/homo-reseticus-v2.zip" download="homo-reseticus-v2.zip">
|
||||
<span>
|
||||
<strong>HOMO_RESETICUS_V2</strong>
|
||||
<small>VERSION_2 // ZIP // 731 KB</small>
|
||||
</span>
|
||||
<span class="material-symbols-outlined" aria-hidden="true">download</span>
|
||||
</a>
|
||||
<p class="pet-footnote">This pet can also be downloaded from <a href="https://petdex.dev/u/homo-reseticus" rel="noopener noreferrer" target="_blank">petdex.dev/u/homo-reseticus</a>.</p>
|
||||
</div>
|
||||
</div>
|
||||
</dialog>
|
||||
|
||||
<dialog class="lightbox lorebox" id="lore-modal" aria-labelledby="lore-title">
|
||||
<div class="lightbox-toolbar">
|
||||
<span id="lore-title">MEME_PROTOCOL_LORE.TXT</span>
|
||||
<button class="icon-action" id="close-lore" type="button" aria-label="Close">X</button>
|
||||
</div>
|
||||
<pre class="lore-text" id="lore-text">FETCHING_LORE...</pre>
|
||||
<div class="lightbox-actions lore-actions">
|
||||
<div class="action-group">
|
||||
<button class="text-action icon-only-action" id="lore-copy" type="button" aria-label="Copy lore" title="Copy lore"><span class="material-symbols-outlined" aria-hidden="true">content_copy</span></button>
|
||||
<a class="text-action icon-only-action" href="/assets/meme-protocol-lore.txt" download="meme-protocol-lore.txt" aria-label="Download lore" title="Download lore"><span class="material-symbols-outlined" aria-hidden="true">download</span></a>
|
||||
<button class="text-action icon-only-action" id="lore-share" type="button" aria-label="Share lore" title="Share lore"><span class="material-symbols-outlined" aria-hidden="true">share</span></button>
|
||||
</div>
|
||||
</div>
|
||||
<p class="viewer-status" data-action-status role="status" aria-live="polite"></p>
|
||||
</dialog>
|
||||
|
||||
<dialog class="modal" id="share-modal" aria-labelledby="share-title">
|
||||
@@ -121,7 +186,7 @@
|
||||
<button class="icon-action" id="close-share" type="button" aria-label="Close">X</button>
|
||||
</div>
|
||||
<div class="share-body">
|
||||
<label for="share-link">MEME_LINK</label>
|
||||
<label for="share-link" id="share-link-label">MEME_LINK</label>
|
||||
<div class="share-link-row">
|
||||
<input id="share-link" type="text" readonly spellcheck="false" aria-describedby="share-status">
|
||||
<button class="primary-action share-copy" id="copy-share-link" type="button">
|
||||
@@ -133,5 +198,7 @@
|
||||
</div>
|
||||
</div>
|
||||
</dialog>
|
||||
|
||||
<p class="action-toast" id="action-status" role="status" aria-live="polite"></p>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user