Skip to content
Baivab Sarkar edited this page Jun 10, 2026 · 3 revisions

Welcome to the Markdown Viewer Wiki

Welcome to the official technical documentation and user wiki for the Markdown Viewer application (v3.7.4). This repository contains detailed configuration guides, architecture documents, installation instructions, and user manuals to help you customize, deploy, and contribute to this client-side Markdown editing suite.


πŸš€ Quick Start Portal

To deploy or run a local instance of the application immediately, execute the corresponding command for your environment:

Deployment Method Command Default Access URL
Docker (Pre-built) docker pull ghcr.io/thisis-developer/markdown-viewer:sha-15eafb0 && docker run -d -p 8080:80 ghcr.io/thisis-developer/markdown-viewer:sha-15eafb0 http://localhost:8080 / http://127.0.0.1:8080
Docker Compose git clone https://github.com/ThisIs-Developer/Markdown-Viewer.git && cd Markdown-Viewer && docker compose up -d http://localhost:8080 / http://127.0.0.1:8080
Python Static Server python3 -m http.server 8080 (Run inside repository root to serve index.html on localhost/127.0.0.1) http://localhost:8080 / http://127.0.0.1:8080
Node.js Static Server npx serve . -p 8080 (Run inside repository root to serve index.html on localhost/127.0.0.1) http://localhost:8080 / http://127.0.0.1:8080
Desktop Application Download execution package from GitHub Releases Launch native binary

πŸ—ΊοΈ Wiki Table of Contents

Use the navigation map below to explore the technical documentation sections of this wiki:

Document / Section Scope & Contents
Features Under-the-hood engineering deep-dive on compilation workers, DOM patching, and proportional scroll synchronization.
Installation Detailed multi-platform setup instructions for Docker, Docker Compose, static web servers, and Neutralinojs compile pipelines.
Usage Guide Standard operations manual detailing tab workspaces, file importing rules, and complete keyboard shortcuts mapping.
Configuration Analysis of localStorage schemas, CDN assets links, Docker Nginx blocks, and Neutralino desktop runtime settings.
Docker Deployment Production Docker customization guide containing security headers, custom context paths, and reverse proxy files.
Desktop App Build workflow documentation for packaging native desktop executable wrappers on Windows, Linux, and macOS.
Development Journey Evolution milestones of the project, comparison matrices between early prototype and v3.7.4, and design history.
Markdown Reference Exhaustive writing template guide for GFM extensions, MathJax LaTeX equations, and Mermaid charts.
FAQ Frequently Asked Questions on local privacy, memory utilization, export troubleshooting, and desktop security warnings.
Contributing Development environment configuration guides, 2-space styling parameters, conventional commits, and PR reviews.

πŸ›‘οΈ Core Architectural Principles

Markdown Viewer is designed with four fundamental principles in mind:

  1. Zero-Server Privacy: 100% client-side execution. The application has no tracking telemetry, cookie banners, analytical beacons, or external database integrations. Your content never leaves the browser.
  2. Off-Thread Processing: Offloads intensive compiling and syntax coloring jobs from the main execution thread to dedicated Web Workers to ensure a 60fps typing experience even on files exceeding 100 KB.
  3. Visual Synchronization: Renders layout and styles identical to GitHub's native Markdown representations, optimized dynamically for desktop, tablet, and mobile views.
  4. Local-First Persistence: Integrates HTML5 Service Workers to intercept asset queries, serving core library script archives from the local browser storage to enable offline functionality.

πŸ› οΈ Global Technology Stack

Dependency Library Version Caching Tier Role & Features
Marked.js 9.1.6 Precached (Main/Worker) Markdown syntax parser and GFM compiler.
Highlight.js 11.9.0 Precached (Worker Thread) Syntactical color parsing for 190+ programming languages.
DOMPurify 3.0.9 Precached (Main Thread) DOM tree cleaning for XSS injection vulnerability blocks.
MathJax 3.2.2 Lazy Cached (Dynamic) LaTeX typesetting rendering engine.
Mermaid.js 11.15.0 Lazy Cached (Dynamic) Flowcharts, sequences, and architectural diagram blocks builder.
jsPDF 2.5.1 Lazy Cached (Dynamic) Client-side paginated PDF document builder.
html2canvas 1.4.1 Lazy Cached (Dynamic) Compiles CSS element layouts to canvas raster grids.
Pako.js 2.1.0 Lazy Cached (Dynamic) zlib DEFLATE compressor for sharing link generation.
js-yaml 4.1.0 Precached (Main Thread) Frontmatter config metadata header parser.
FileSaver.js 2.0.5 Precached (Main Thread) Controls download streams from the browser sandbox.
Bootstrap 5.3.2 Precached (CDN CSS/JS) Controls general layouts, modal forms, and UI toggles.
Neutralinojs 6.5.0 Native Bridge Desktop operating system framework wrapper shell.

πŸ”— Project Resources

Clone this wiki locally