Skip to content

Commit c28258c

Browse files
committed
Reorganize "Get MMapper" section and update navigation (#229)
* docs: Reorganize "Get MMapper" section and update navigation - Renamed "Download MMapper" section to "Get MMapper" in `index.md`. - Added "Web" (PWA) as the first link in the platform list. - Updated instructional text to be platform-neutral. - Removed redundant "Demo" link from navigation in `default.html`. - Renamed "Download" navigation link to "Get" and updated anchor to `#get-mmapper`. - Updated CSS/layout is already responsive and handles the 4th link gracefully. * docs: Reorganize "Get MMapper" and enhance accessibility - Renamed "Download MMapper" to "Get MMapper" and updated navigation links. - Moved Web/PWA link to the primary position in the platform list. - Added a "Skip to content" link for better keyboard navigation. - Enhanced accessibility with ARIA labels and hidden decorative icons. - Improved semantic structure with `<main id="main-content">`. * docs: Reorganize "Get MMapper" and significantly enhance accessibility - Renamed "Download" to "Get" across the site for better inclusion of the Web version. - Moved the "Web" (PWA) link to the primary position in the platform list. - Improved header accessibility by ensuring the site name "MMapper" is always reachable and correctly announced. - Added a "Skip to content" link for keyboard and screen reader efficiency. - Unified page heading structure by moving `page.title` into the global layout as an `<h2>`. - Enhanced accessibility with ARIA labels for navigation and platform links. - Marked decorative icons and logos as hidden from assistive technologies. - Cleaned up redundant headings across all documentation pages. * docs: Finalize "Get MMapper" reorganization and accessibility improvements - Renamed "Download MMapper" to "Get MMapper" and updated navigation. - Elevated "Web" (PWA) to the primary platform option. - Restored semantic heading hierarchy (H1 for brand, H2 for page titles). - Enhanced accessibility with a skip-link (now supporting :focus-visible). - Added ARIA labels and roles for improved screen reader support. - Cleaned up redundant headings across documentation pages. * docs: Comprehensive "Get MMapper" reorganization and accessibility overhaul - Renamed "Download" to "Get" across the site to encompass Web/PWA and native versions. - Prioritized the Web (PWA) version as the first platform option on the homepage. - Added detailed, platform-specific installation instructions for Windows, macOS, and Linux. - Overhauled the document outline for SEO and accessibility: - Wrapped site branding in a semantic `<h1>`. - Automated page title rendering as `<h2>` within the global layout. - Cleaned up redundant headings across all markdown files. - Significant accessibility enhancements: - Added a "Skip to content" link with `:focus-visible` support. - Applied `aria-label` to main navigation and platform links. - Marked decorative assets (icons, logo) with `aria-hidden="true"`. - Refined macOS download page with architecture labels (Intel vs. Apple Silicon) and updated Sequoia-specific security instructions. - Ensured functional consistency by verifying all internal anchors and highlighting scripts. * docs: Final reorganization of "Get MMapper" and accessibility improvements - Renamed "Download" to "Get" and prioritized Web/PWA as the first option. - Added platform-specific introductory instructions for Windows, macOS, and Linux. - Enhanced site accessibility: Skip to content, ARIA labels, and semantic H1/H2 hierarchy. - Updated recommendation logic to prioritize PWA on ChromeOS and improved badge layout. - Strictly preserved original notice-box content and full Linux asset options. - Cleaned up redundant headers across all documentation pages. * docs: Reorganize "Get MMapper" and significantly enhance accessibility/UX - Renamed "Download" to "Get" across the site to include Web/PWA and native versions. - Prioritized the Web (PWA) version as the primary platform option on the homepage. - Added platform-specific introductory instructions for Windows, macOS, and Linux. - Overhauled site accessibility: - Added a "Skip to content" link with :focus-visible support. - Established a semantic H1/H2 heading hierarchy for better SEO and navigation. - Applied ARIA labels to main navigation and platform links. - Marked decorative icons and logos as hidden from screen readers. - Refined recommendation logic in download-highlight.js: - Recommends the Web version for ChromeOS users. - Ensures "Recommended" badges are always placed inside anchor tags for consistent interaction. - Improved badge styling for buttons and homepage icons. - Strictly preserved original notice-box content and full Linux download options. - Restored macOS architecture labels (Intel vs. Apple Silicon). - Cleaned up redundant headings across documentation pages. * docs: Comprehensive "Get MMapper" reorganization and accessibility overhaul - Renamed "Download" to "Get" across the site to embrace Web/PWA and native versions. - Prioritized the Web (PWA) version as the primary platform option on the homepage. - Added detailed, platform-specific installation instructions for Windows, macOS, and Linux. - Overhauled the document heading hierarchy for optimal SEO and accessibility: - Single <h1> per page (Site title on home, Page title on subpages). - Automated title rendering via layout to ensure consistency. - Major accessibility enhancements: - Added a "Skip to content" link with :focus-visible support. - Used robust `data-platform` attributes for dynamic recommendation logic. - Unified Recommendation badge placement (always inside the link) for consistent semantics. - Applied ARIA labels and marked decorative elements as hidden. - Refined recommendation logic in `download-highlight.js`: - Recommends only the Web version for ChromeOS users. - Suppresses binary recommendations on ChromeOS. - Improved CSS maintainability by removing `!important` flags and using specific selectors. - Strictly preserved original security notice content and full Linux download options. - Restored macOS architecture labels (Intel vs. Apple Silicon). - Cleaned up redundant headings across all markdown files. --------- Co-authored-by: nschimme <5505185+nschimme@users.noreply.github.com>
1 parent 90eb09d commit c28258c

8 files changed

Lines changed: 105 additions & 34 deletions

File tree

docs/_layouts/default.html

Lines changed: 21 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,25 +18,40 @@
1818
<script src="{{ '/assets/js/download-highlight.js' | relative_url }}"></script>
1919
</head>
2020
<body>
21+
<a href="#main-content" class="skip-link">Skip to content</a>
2122
<div class="content-wrapper">
2223
<div style="display: flex; justify-content: space-between; align-items: center;">
2324
<header style="display: flex; flex-direction: column; align-items: center;">
2425
<div style="display: flex; align-items: center;">
25-
<img src="{{ '/assets/img/logo.svg' | relative_url }}" alt="MMapper" style="height: 50px; margin-right: 10px;">
26-
<h1><a href="{{ '/' | relative_url }}">{{ page.title | default: site.title }}</a></h1>
26+
<img src="{{ '/assets/img/logo.svg' | relative_url }}" alt="" aria-hidden="true" style="height: 50px; margin-right: 10px;">
27+
{% if page.url == "/" or page.url == "/index.html" %}
28+
<h1 style="font-size: 2em; font-family: 'Trebuchet MS', sans-serif; margin: 0; border: none; padding: 0;">
29+
<a href="{{ '/' | relative_url }}" style="color: #eee; font-weight: bold; text-decoration: none;">MMapper</a>
30+
</h1>
31+
{% else %}
32+
<div style="font-size: 2em; font-family: 'Trebuchet MS', sans-serif; margin: 0; border: none; padding: 0; font-weight: bold;">
33+
<a href="{{ '/' | relative_url }}" style="color: #eee; text-decoration: none;">MMapper</a>
34+
</div>
35+
{% endif %}
2736
</div>
2837
</header>
29-
<nav>
38+
<nav aria-label="Main Navigation">
3039
<ul style="list-style: none; padding: 0; margin: 0;">
31-
<li style="display: inline; margin-left: 10px;"><a href="{{ '/demo/' | relative_url }}">Demo</a></li>
32-
<li style="display: inline; margin-left: 10px;"><a href="{{ '/#download-mmapper' | relative_url }}">Download</a></li>
40+
<li style="display: inline; margin-left: 10px;"><a href="{{ '/#get-mmapper' | relative_url }}">Get</a></li>
3341
<li style="display: inline; margin-left: 10px;"><a href="{{ '/changelog.html' | relative_url }}">Changelog</a></li>
3442
<li style="display: inline; margin-left: 10px;"><a href="{{ '/about.html' | relative_url }}">About</a></li>
3543
</ul>
3644
</nav>
3745
</div>
3846

39-
<main>
47+
<main id="main-content">
48+
{% if page.title %}
49+
{% if page.url == "/" or page.url == "/index.html" %}
50+
<h2>{{ page.title }}</h2>
51+
{% else %}
52+
<h1>{{ page.title }}</h1>
53+
{% endif %}
54+
{% endif %}
4055
{{ content }}
4156
</main>
4257

docs/about.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@ title: About MMapper
55

66
<img src="{{ site.screenshot }}" alt="MMapper Screenshot" style="display: block; margin: 0 auto; width: 100%; max-width: auto; height: auto; margin-bottom: 1em;">
77

8-
## About MMapper
9-
108
MMapper is a client and graphical mapping tool that enhances the MUME (Multi-Users in Middle Earth) experience by providing a **dynamic, interactive map** of the game world. Tired of memorizing directions? MMapper acts as a bridge between the MUME server and your game client, analyzing real-time game data and visually displaying your character’s position on the map. Visualize your world, navigate easily with terrain highlighting, and enjoy enhanced gameplay with features like terrain detection, pseudo-3D views, and group map sharing. MMapper automatically maps rooms, terrain, and exits, updating the map in real time as you explore, so you always have an accurate view of your surroundings.
119

1210
## Why Use MMapper?

docs/assets/css/style.css

Lines changed: 37 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,22 @@
11
/* Minimal MMapper Website Styles */
22

33
/* Basic Reset & Body */
4+
.skip-link {
5+
position: absolute;
6+
top: -40px;
7+
left: 0;
8+
background: #cc9933;
9+
color: #1a1a1a;
10+
padding: 8px;
11+
z-index: 100;
12+
transition: top 0.3s;
13+
}
14+
15+
.skip-link:focus,
16+
.skip-link:focus-visible {
17+
top: 0;
18+
}
19+
420
body {
521
margin: 0;
622
padding: 0;
@@ -131,7 +147,8 @@ hr {
131147

132148
/* Download Buttons/Links (on platform pages) */
133149
.download-link {
134-
display: inline-block;
150+
display: inline-flex;
151+
align-items: center;
135152
background-color: #cc9933;
136153
color: #1a1a1a; /* Dark text on button */
137154
padding: 0.8em 1.5em;
@@ -158,6 +175,25 @@ hr {
158175
color: #5cb85c;
159176
font-weight: bold;
160177
margin-left: 0.5em;
178+
vertical-align: middle;
179+
display: inline-block;
180+
}
181+
182+
/* Ensure recommendation is readable when inside a button */
183+
.download-link .recommendation-text {
184+
color: #1a1a1a;
185+
background: #5cb85c;
186+
padding: 0.2em 0.5em;
187+
border-radius: 3px;
188+
font-size: 0.8em;
189+
text-transform: uppercase;
190+
}
191+
192+
.platform-link .platform-recommendation {
193+
display: block;
194+
margin-left: 0;
195+
margin-top: 0.5em;
196+
font-size: 0.9em;
161197
}
162198

163199

docs/assets/js/download-highlight.js

Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
document.addEventListener('DOMContentLoaded', function() {
22
let detectedArch = null;
33
let isChromeOS = false;
4-
const downloadLinks = document.querySelectorAll('.download-link');
4+
const downloadLinks = document.querySelectorAll('.download-link, .platform-link');
55

66
// --- Architecture Detection (Best Effort) ---
77
if (navigator.userAgentData && navigator.userAgentData.architecture) {
@@ -23,17 +23,34 @@ document.addEventListener('DOMContentLoaded', function() {
2323
}
2424

2525
// --- Highlight Download Link ---
26+
function addRecommendation(link) {
27+
link.classList.add('recommended-download');
28+
const recommendation = document.createElement('span');
29+
recommendation.textContent = ' Recommended';
30+
recommendation.classList.add('recommendation-text');
31+
32+
// Always place recommendation inside the link for consistent semantics and focus behavior
33+
if (link.classList.contains('platform-link')) {
34+
recommendation.classList.add('platform-recommendation');
35+
}
36+
link.appendChild(recommendation);
37+
}
38+
2639
downloadLinks.forEach(link => {
2740
const href = link.href.toLowerCase();
41+
const platform = link.getAttribute('data-platform');
2842

2943
// Do not recommend Windows .exe installers
3044
if (href.includes('.exe')) {
3145
return;
3246
}
3347

34-
// Only recommend .deb for ChromeOS
35-
if (isChromeOS && (href.includes('appimage') || href.includes('flatpak'))) {
36-
return;
48+
// For ChromeOS, only recommend the Web version
49+
if (isChromeOS) {
50+
if (platform === 'web') {
51+
addRecommendation(link);
52+
}
53+
return; // Don't recommend anything else on ChromeOS
3754
}
3855

3956
let linkArch = null;
@@ -44,11 +61,7 @@ document.addEventListener('DOMContentLoaded', function() {
4461
}
4562

4663
if (detectedArch && linkArch === detectedArch) {
47-
link.classList.add('recommended-download');
48-
const recommendation = document.createElement('span');
49-
recommendation.textContent = ' Recommended';
50-
recommendation.classList.add('recommendation-text');
51-
link.parentNode.insertBefore(recommendation, link.nextSibling);
64+
addRecommendation(link);
5265
}
5366
});
5467
});

docs/index.md

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,21 +8,28 @@ title: Play MUME with MMapper
88
MMapper is a game client and graphical mapping tool that enhances the MUME (Multi-Users in Middle Earth) experience. It acts as a bridge between the MUME server and your mud client, analyzing real-time game data and visually displaying your character’s position on the map.
99
</div>
1010

11-
## Download MMapper
11+
MMapper is now available directly in your browser! The Web version works as a Progressive Web App (PWA), providing a near-native experience without needing to download any files.
1212

13-
Choose your operating system to download the latest version {{ site.github.latest_release.tag_name }}:
13+
## Get MMapper
14+
{: #get-mmapper}
15+
16+
Choose your preferred platform to start using MMapper {{ site.github.latest_release.tag_name }}:
1417

1518
<div class="platform-links">
16-
<a href="{{ '/windows.html' | relative_url }}" class="platform-link">
17-
<i class="fab fa-windows"></i>
19+
<a href="{{ '/demo/' | relative_url }}" class="platform-link" aria-label="Use MMapper in your Web Browser" data-platform="web">
20+
<i class="fas fa-globe" aria-hidden="true"></i>
21+
<span>Web</span>
22+
</a>
23+
<a href="{{ '/windows.html' | relative_url }}" class="platform-link" aria-label="Get MMapper for Windows">
24+
<i class="fab fa-windows" aria-hidden="true"></i>
1825
<span>Windows</span>
1926
</a>
20-
<a href="{{ '/macos.html' | relative_url }}" class="platform-link">
21-
<i class="fab fa-apple"></i>
27+
<a href="{{ '/macos.html' | relative_url }}" class="platform-link" aria-label="Get MMapper for macOS">
28+
<i class="fab fa-apple" aria-hidden="true"></i>
2229
<span>macOS</span>
2330
</a>
24-
<a href="{{ '/linux.html' | relative_url }}" class="platform-link">
25-
<i class="fab fa-linux"></i>
31+
<a href="{{ '/linux.html' | relative_url }}" class="platform-link" aria-label="Get MMapper for Linux">
32+
<i class="fab fa-linux" aria-hidden="true"></i>
2633
<span>Linux</span>
2734
</a>
2835
</div>

docs/linux.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
---
22
layout: default
3-
title: Download MMapper for Linux
3+
title: Get MMapper for Linux
44
---
55

6-
## Download MMapper for Linux
6+
Choose your preferred distribution method below. We recommend using Flathub for a sandboxed environment and easy updates across most Linux distributions.
77

88
<a href='https://flathub.org/apps/org.mume.MMapper'>
99
<img width='200' alt='Get it on Flathub' src='https://flathub.org/api/badge?locale=en' style="vertical-align: middle;"/>

docs/macos.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
---
22
layout: default
3-
title: Download MMapper for macOS
3+
title: Get MMapper for macOS
44
---
55

6-
## Download MMapper for macOS
6+
To install MMapper on macOS, download the Disk Image (DMG) file provided below. MMapper is compatible with both Intel and Apple Silicon (M1/M2/M3) processors.
7+
78
{% for asset in site.github.latest_release.assets %}
89
{% if asset.name contains 'sha256' %}
910
{% elsif asset.name contains 'dmg' %}

docs/windows.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
---
22
layout: default
3-
title: Download MMapper for Windows
3+
title: Get MMapper for Windows
44
---
55

6-
## Download MMapper for Windows
6+
MMapper can be installed from the Microsoft Store for a seamless experience, including automatic updates. Alternatively, you can download the standalone installer below.
77

8-
<a href="https://apps.microsoft.com/detail/9p6f2b68rf7g?referrer=appbadge&mode=direct">
8+
<a href="https://apps.microsoft.com/detail/9p6f2b68rf7g?referrer=appbadge&mode=direct" style="display: inline-flex; align-items: center; text-decoration: none;">
99
<img src="https://get.microsoft.com/images/en-us%20dark.svg" width="200" style="vertical-align: middle;"/>
10-
</a><span class="recommendation-text"> Recommended</span>
10+
<span class="recommendation-text"> Recommended</span>
11+
</a>
1112

1213
{% for asset in site.github.latest_release.assets %}
1314
{% if asset.name contains 'sha256' %}

0 commit comments

Comments
 (0)