Skip to content

Commit efe5b99

Browse files
Merge pull request #119 from ThisIs-Developer/feature/seo-and-localization-optimizations
feat: implement global and Asia-focused SEO & localization optimizations
2 parents 9fd6859 + c45576d commit efe5b99

8 files changed

Lines changed: 538 additions & 8 deletions

File tree

desktop-app/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"name": "markdown-viewer-desktop",
33
"version": "1.0.0",
44
"private": true,
5-
"description": "Neutralinojs desktop port of Markdown Viewer",
5+
"description": "A premium client-side GitHub-style Markdown editor and live preview tool for desktop, featuring math rendering, diagrams, syntax highlighting, and PDF/HTML exports.",
66
"scripts": {
77
"setup": "node setup-binaries.js",
88
"postsetup": "node prepare.js",

index.html

Lines changed: 71 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,23 @@
99
<link rel="dns-prefetch" href="https://cdnjs.cloudflare.com">
1010
<link rel="dns-prefetch" href="https://cdn.jsdelivr.net">
1111

12+
<!-- Canonical Link -->
13+
<link rel="canonical" href="https://markdownviewer.pages.dev/">
14+
15+
<!-- Multilingual Hreflang Tags for Search Crawlers -->
16+
<link rel="alternate" hreflang="x-default" href="https://markdownviewer.pages.dev/" />
17+
<link rel="alternate" hreflang="en" href="https://markdownviewer.pages.dev/?lang=en" />
18+
<link rel="alternate" hreflang="zh-Hans" href="https://markdownviewer.pages.dev/?lang=zh" />
19+
<link rel="alternate" hreflang="ja" href="https://markdownviewer.pages.dev/?lang=ja" />
20+
<link rel="alternate" hreflang="ko" href="https://markdownviewer.pages.dev/?lang=ko" />
21+
22+
<!-- Asian Search Engine Verification Meta Tags -->
23+
<meta name="baidu-site-verification" content="baidu_verification_code_placeholder" />
24+
<meta name="naver-site-verification" content="naver_verification_code_placeholder" />
25+
26+
<!-- PWA Web Manifest -->
27+
<link rel="manifest" href="manifest.json">
28+
1229
<!-- Primary Meta Tags -->
1330
<meta name="title" content="Markdown Viewer">
1431
<meta name="description" content="Markdown Viewer is a powerful GitHub-style Markdown rendering tool with live preview, LaTeX math, Mermaid diagrams, syntax highlighting, dark mode, and export options to PDF, HTML, and MD—all fully client-side and secure.">
@@ -33,6 +50,31 @@
3350
<meta property="twitter:description" content="Markdown Viewer is a powerful GitHub-style Markdown rendering tool with live preview, LaTeX math, Mermaid diagrams, syntax highlighting, dark mode, and export options to PDF, HTML, and MD—all fully client-side and secure.">
3451
<meta property="twitter:image" content="https://markdownviewer.pages.dev/assets/icon.jpg">
3552

53+
<!-- JSON-LD Structured Data Schema for Search Rich Snippets -->
54+
<script type="application/ld+json">
55+
{
56+
"@context": "https://schema.org",
57+
"@type": "WebApplication",
58+
"name": "Markdown Viewer",
59+
"url": "https://markdownviewer.pages.dev/",
60+
"image": "https://markdownviewer.pages.dev/assets/icon.jpg",
61+
"description": "A powerful GitHub-style Markdown rendering tool with live preview, LaTeX, Mermaid, syntax highlighting, and PDF export.",
62+
"applicationCategory": "DeveloperApplication",
63+
"operatingSystem": "All",
64+
"browserRequirements": "Requires HTML5 compatible browser",
65+
"author": {
66+
"@type": "Organization",
67+
"name": "ThisIs-Developer",
68+
"url": "https://github.com/ThisIs-Developer"
69+
},
70+
"offers": {
71+
"@type": "Offer",
72+
"price": "0.00",
73+
"priceCurrency": "USD"
74+
}
75+
}
76+
</script>
77+
3678
<title>Markdown Viewer</title>
3779
<link href="assets/icon.jpg" rel="icon" type="image/jpg">
3880
<!-- Updated libraries to latest versions with Subresource Integrity (SRI) -->
@@ -78,13 +120,13 @@ <h1 class="h4 mb-0 me-2">Markdown Viewer</h1>
78120
</a>
79121
<div id="stats-container" class="stats-container d-flex align-items-center d-none d-md-flex">
80122
<div class="stat-item me-3">
81-
<i class="bi bi-clock me-1"></i> <span id="reading-time">0</span> Min Read
123+
<i class="bi bi-clock me-1"></i> <span id="reading-time">0</span> <span id="lbl-min-read">Min Read</span>
82124
</div>
83125
<div class="stat-item me-3">
84-
<i class="bi bi-text-paragraph me-1"></i> <span id="word-count">0</span> Words
126+
<i class="bi bi-text-paragraph me-1"></i> <span id="word-count">0</span> <span id="lbl-words">Words</span>
85127
</div>
86128
<div class="stat-item">
87-
<i class="bi bi-fonts me-1"></i> <span id="char-count">0</span> Chars
129+
<i class="bi bi-fonts me-1"></i> <span id="char-count">0</span> <span id="lbl-chars">Chars</span>
88130
</div>
89131
</div>
90132
</div>
@@ -136,6 +178,18 @@ <h1 class="h4 mb-0 me-2">Markdown Viewer</h1>
136178
<i class="bi bi-share"></i> <span class="btn-text">Share</span>
137179
</button>
138180

181+
<div class="dropdown me-1">
182+
<button class="tool-button dropdown-toggle" type="button" id="languageDropdown" data-bs-toggle="dropdown" aria-expanded="false" title="Switch Language">
183+
<i class="bi bi-translate"></i> <span id="current-lang-label" class="btn-text">English</span>
184+
</button>
185+
<ul class="dropdown-menu dropdown-menu-end" aria-labelledby="languageDropdown">
186+
<li><a class="dropdown-item lang-select-item active" href="#" data-lang="en">🇺🇸 English</a></li>
187+
<li><a class="dropdown-item lang-select-item" href="#" data-lang="zh">🇨🇳 简体中文</a></li>
188+
<li><a class="dropdown-item lang-select-item" href="#" data-lang="ja">🇯🇵 日本語</a></li>
189+
<li><a class="dropdown-item lang-select-item" href="#" data-lang="ko">🇰🇷 한국어</a></li>
190+
</ul>
191+
</div>
192+
139193
<button id="theme-toggle" class="tool-button" title="Toggle Dark Mode">
140194
<i class="bi bi-moon"></i>
141195
</button>
@@ -189,13 +243,13 @@ <h5>Menu</h5>
189243

190244
<div class="mobile-stats-container mb-3">
191245
<div class="stat-item mb-2">
192-
<i class="bi bi-clock me-1"></i> <span id="mobile-reading-time">0</span> Min Read
246+
<i class="bi bi-clock me-1"></i> <span id="mobile-reading-time">0</span> <span id="lbl-mobile-min-read">Min Read</span>
193247
</div>
194248
<div class="stat-item mb-2">
195-
<i class="bi bi-text-paragraph me-1"></i> <span id="mobile-word-count">0</span> Words
249+
<i class="bi bi-text-paragraph me-1"></i> <span id="mobile-word-count">0</span> <span id="lbl-mobile-words">Words</span>
196250
</div>
197251
<div class="stat-item">
198-
<i class="bi bi-fonts me-1"></i> <span id="mobile-char-count">0</span> Chars
252+
<i class="bi bi-fonts me-1"></i> <span id="mobile-char-count">0</span> <span id="lbl-mobile-chars">Chars</span>
199253
</div>
200254
</div>
201255

@@ -235,6 +289,17 @@ <h5>Menu</h5>
235289
<button id="mobile-direction-toggle" class="mobile-menu-item" title="Toggle RTL/LTR">
236290
<i class="bi bi-text-right me-2"></i> Switch to RTL
237291
</button>
292+
<div class="mobile-menu-item dropdown w-100 p-0 border-0">
293+
<button class="mobile-menu-item w-100 text-start dropdown-toggle" type="button" id="mobileLanguageDropdown" data-bs-toggle="dropdown" aria-expanded="false" title="Switch Language">
294+
<i class="bi bi-translate me-2"></i> Language: <span id="mobile-current-lang-label">English</span>
295+
</button>
296+
<ul class="dropdown-menu w-100" aria-labelledby="mobileLanguageDropdown">
297+
<li><a class="dropdown-item lang-select-item active" href="#" data-lang="en">🇺🇸 English</a></li>
298+
<li><a class="dropdown-item lang-select-item" href="#" data-lang="zh">🇨🇳 简体中文</a></li>
299+
<li><a class="dropdown-item lang-select-item" href="#" data-lang="ja">🇯🇵 日本語</a></li>
300+
<li><a class="dropdown-item lang-select-item" href="#" data-lang="ko">🇰🇷 한국어</a></li>
301+
</ul>
302+
</div>
238303
<button id="mobile-theme-toggle" class="mobile-menu-item" title="Toggle Dark Mode">
239304
<i class="bi bi-moon me-2"></i> Dark Mode
240305
</button>

manifest.json

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
{
2+
"name": "Markdown Viewer",
3+
"short_name": "MD Viewer",
4+
"description": "A premium client-side GitHub-style Markdown editor and live preview tool.",
5+
"start_url": "./index.html?utm_source=pwa",
6+
"display": "standalone",
7+
"background_color": "#0d1117",
8+
"theme_color": "#0d1117",
9+
"orientation": "any",
10+
"icons": [
11+
{
12+
"src": "assets/icon.jpg",
13+
"sizes": "512x512",
14+
"type": "image/jpeg",
15+
"purpose": "any maskable"
16+
}
17+
]
18+
}

robots.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
User-agent: *
2+
Allow: /
3+
Disallow: /wiki/Contributing
4+
5+
Sitemap: https://markdownviewer.pages.dev/sitemap.xml

0 commit comments

Comments
 (0)