Markdown High Definition - Transform your markdown into focused reading sessions
MDHD is a revolutionary markdown reader that transforms your lengthy documents into digestible, focused reading sessions . Instead of scrolling through endless walls of text, MDHD intelligently breaks your content into sections based on headings, presenting each as a beautiful, distraction-free card.
Think of it as Netflix for your documentation π¬ - where each section becomes an episode in your learning journey!
Ever tried reading a 50-page markdown documentation? Your brain gets overwhelmed, you lose focus, and important information gets lost in the noise. Traditional markdown viewers show everything at once, creating:
- Information overload π§ π₯
- Loss of reading progress πβ
- Poor mobile reading experience π±π΅
- Lack of focus and retention π―β
MDHD revolutionizes markdown reading by:
- Intelligent Section Parsing π - Automatically detects headings (
#
,##
) and creates logical breaks - Card-Based Navigation π - Each section becomes a focused reading card
- Immersive Full-Screen Mode π₯οΈ - Eliminates distractions for deep focus
- Progress Tracking π - Know exactly where you are and how much is left
- Mobile-First Design π± - Perfect reading experience on any device
- Automatic section detection based on
#
and##
headings - Preserves all markdown formatting (code blocks, tables, links, images)
- Word count estimation for each section
- Reading time calculation based on average reading speed
- One section at a time for maximum focus
- Smooth transitions between sections with beautiful animations
- Swipe navigation on mobile devices (left/right to navigate)
- Keyboard shortcuts for power users (
β
,β
,Space
,Esc
)
Reading Settings:
- 20+ Professional Fonts including serif, sans-serif, and monospace options
- Optimized for long-form reading (Literata, Spectral, EB Garamond, etc.)
- Accessibility fonts (Atkinson Hyperlegible) for better readability
Theme System:
- 25+ Beautiful Themes across multiple categories
- Dark, Light, Developer, and Unique theme collections
- Real-time theme switching without losing reading progress
- System preference detection for automatic dark/light mode
- Section-by-section progress tracking π
- Reading time estimation for remaining content β±οΈ
- Visual progress indicators with completion states β
- Table of contents with quick navigation π
- 25+ Syntax themes (One Dark, VS Code Dark+, Dracula, etc.)
- Collapsible code blocks to save screen space
- One-click copy functionality π
- Auto-language detection with proper icons
- Mobile-optimized horizontal scrolling
- Touch-friendly navigation with large tap targets
- Swipe gestures for intuitive section navigation
- Responsive typography that adapts to screen size
- Auto-hiding controls for distraction-free reading
β / β Previous section
β / β / β΅ Next section
Esc Hide/show controls
- Framer Motion powered smooth animations
- Scroll-triggered entrance effects
- Hover states and micro-interactions
- Loading states and skeleton screens
MDHD's intelligent parsing system works through several steps:
- Markdown Analysis π
// The parser scans for heading patterns const h1Regex = /^#\s+(.+)$/; const h2Regex = /^##\s+(.+)$/;
- Section Boundary Detection π
- Each
#
or##
heading creates a new section - Content before the first heading becomes an "Introduction" section
- Code blocks are preserved and never split
- Each
- Metadata Extraction π
- Word count per section
- Reading time estimation (250 WPM average)
- Section hierarchy (H1 vs H2)
- Slug Generation π
- URL-friendly IDs for each section
- Enables deep linking and navigation
interface ThemeOption {
name: string;
category: string;
background: string;
foreground: string;
primary: string;
// ... other color properties
}
Categories:
- Dark π - For night reading and reduced eye strain
- Light βοΈ - Clean, bright themes for daytime reading
- Developer π¨βπ» - Code-focused themes with high contrast
- Unique π¨ - Creative and artistic color combinations
MDHD follows a mobile-first approach :
- Base styles designed for mobile (320px+)
- Progressive enhancement for tablets (768px+)
- Desktop optimization for large screens (1024px+)
/* Mobile-first approach */
.text-sm /* Base mobile size */
.xs:text-base /* Small phones */
.sm:text-lg /* Tablets */
.lg:text-xl /* Desktop */
- React 18+ - Modern React with hooks and concurrent features
- TypeScript 5+ - Type safety and better developer experience
- Vite - Lightning-fast build tool and dev server
- Tailwind CSS - Utility-first CSS framework
- Framer Motion - Production-ready motion library
- Radix UI - Unstyled, accessible UI primitives
- Lucide React - Beautiful & consistent icon library
- React Markdown - Markdown to React component renderer
- Remark GFM - GitHub Flavored Markdown support
- React Syntax Highlighter - Code syntax highlighting
- Zustand - Lightweight state management
- Local Storage persistence - Settings survival across sessions
- React Swipeable - Touch gesture handling
- Intersection Observer - Scroll-based animations
- Responsive design - Mobile-first approach
Before you begin, ensure you have:
- Node.js 18+ installed
- npm or yarn package manager
- A modern browser (Chrome, Firefox, Safari, Edge)
# Clone the repository
git clone https://github.com/yourusername/mdhd.git
# Navigate to project directory
cd mdhd
# Install dependencies
npm install
# Start development server
npm run dev
# Open your browser to http://localhost:5173
# Create optimized production build
npm run build
# Preview the production build locally
npm run preview
- Paste Your Markdown π
- Copy your markdown content into the text area
- MDHD automatically detects sections based on headings
- Start Reading π
- Click "Start Focused Reading"
- Enter immersive full-screen mode
- Navigate Sections π§
- Use arrow keys, swipe gestures, or on-screen controls
- Track your progress in real-time
# Main Section Title
This content will become the first reading card.
## Subsection
This creates a sub-level section.
### Details (treated as content)
H3 and below are treated as content, not section breaks.
```javascript
// Code blocks are preserved perfectly
function example() {
return "syntax highlighting included!";
}
Blockquotes, tables, and all formatting is maintained.
### ποΈ Customization Options
#### Font Selection
- **Serif fonts** for traditional reading (Georgia, Merriweather, Lora)
- **Sans-serif fonts** for modern feel (Inter, Open Sans, Source Sans Pro)
- **Accessibility fonts** for improved readability (Atkinson Hyperlegible)
- **Monospace fonts** for technical content (Cascadia Code, Fira Code)
#### Theme Categories
- **Professional** - Business and documentation themes
- **Creative** - Artistic and unique color combinations
- **Developer** - High-contrast themes for code-heavy content
- **Accessibility** - High-contrast themes for visual accessibility
---
## π¨ Customization & Theming
### π Creating Custom Themes
MDHD's theme system is built for extensibility:
```typescript
const customTheme: ThemeOption = {
name: "My Custom Theme",
category: "Unique",
background: "#1a1a1a",
foreground: "#ffffff",
primary: "#ff6b6b",
// ... other properties
};
Our themes are carefully designed based on reading research:
- Dark themes π - Reduce eye strain in low light
- Warm colors π₯ - Create comfortable reading atmosphere
- High contrast β‘ - Improve text legibility
- Muted accents π¨ - Avoid distraction from content
Each font family is chosen for specific reading scenarios:
Font Category | Best For | Examples |
---|---|---|
Serif | Long-form reading, books | Literata, Spectral, EB Garamond |
Sans-serif | Digital screens, UI text | Inter, Source Sans Pro, IBM Plex |
Monospace | Code, technical docs | Cascadia Code, Fira Code |
Accessibility | Dyslexia, visual impairments | Atkinson Hyperlegible |
We welcome contributions! Here's how you can help:
- Use GitHub Issues with detailed reproduction steps
- Include browser/device information
- Provide sample markdown if relevant
- Check existing issues first
- Describe the use case and benefits
- Consider implementation complexity
# Fork the repository
git clone https://github.com/utkarsh5026/mdhd.git
# Create a feature branch
git checkout -b feature/amazing-feature
# Make your changes and commit
git commit -m "Add amazing feature"
# Push to your fork
git push origin feature/amazing-feature
# Create a Pull Request
- TypeScript for type safety
- ESLint + Prettier for code formatting
- Conventional Commits for clear history
- Component documentation with JSDoc
This project is licensed under the MIT License
MIT License - you're free to use, modify, and distribute this software!
- Medium's distraction-free reading experience
- Notion's clean typography and theming
- GitHub's markdown rendering excellence
- Apple's focus on reading accessibility
- React ecosystem for component architecture
- Tailwind CSS for rapid styling
- Framer Motion for delightful animations
- Open source community for amazing tools
Inspired by the principle that great design is invisible - MDHD gets out of your way so you can focus on what matters: the content .
- Twitter : @UtkarshPriyad10
- Discord : Join our community
- Email : utkarshpriyadarshi5026@gmail.com
Made with β€οΈ for the developer and content creator community
Transform your reading experience today β¨