Skip to main content

Jupyterlab extension to export markdown file as pdf, docx and html (with embedded images)

Project description

jupyterlab_export_markdown_extension

GitHub Actions npm version PyPI version Total PyPI downloads JupyterLab 4 Brought To You By KOLOMOLO

[!TIP] This extension is part of the stellars_jupyterlab_extensions metapackage. Install all Stellars extensions at once: pip install stellars_jupyterlab_extensions

Export markdown files to PDF, DOCX, and HTML directly from JupyterLab. No external dependencies required - just pip install and go.

Export Markdown As menu

Features

  • PDF Export - Full Unicode and emoji support via weasyprint
  • DOCX Export - Microsoft Word documents with smart image sizing (fit-to-page for large images)
  • HTML Export - Standalone files with embedded images
  • GitHub Alerts - Colored alert boxes for [!NOTE], [!TIP], [!IMPORTANT], [!WARNING], [!CAUTION] with left border and background shading in DOCX/PDF
  • Mermaid Diagrams - Client-side rendering with calibrated DPI scaling (configurable, default 150 DPI)
  • Embedded Images - Local images automatically converted to base64
  • Syntax Highlighting - Code blocks with Pygments-powered coloring
  • Export Spinner - Modal dialog shows progress during export operations
  • File Menu Integration - "Export Markdown As" submenu appears when markdown is active
  • Command Palette - All export commands available via Ctrl+Shift+C
  • Settings - Configure diagram DPI and alert label visibility via Settings Editor
  • Pure Python - No pandoc, no LaTeX, no system dependencies

Requirements

  • JupyterLab >= 4.0.0
  • Python >= 3.9

For PDF export, install required system libraries and emoji font:

# Ubuntu/Debian
sudo apt-get install libcairo2 libpango-1.0-0 libpangoft2-1.0-0 fonts-noto-color-emoji

Mermaid diagrams are rendered client-side using JupyterLab's built-in Mermaid support - no additional installation required.

Install

pip install jupyterlab_export_markdown_extension

That's it. No really, that's actually it. We spent considerable effort making sure you don't have to install pandoc, LaTeX, or sacrifice a goat to get this working.

Usage

  1. Open a markdown file in JupyterLab
  2. Use File -> Export Markdown As submenu, or
  3. Open command palette (Ctrl+Shift+C) and search "Export Markdown"

Export Formats

Format Library Notes
PDF weasyprint Unicode, emojis, compact styling
DOCX python-docx + htmldocx Smart image sizing, banded tables, alert boxes, 0.5" margins
HTML markdown Standalone with embedded images

Settings

Configure the extension via Settings -> Settings Editor -> Export Markdown Extension:

  • Diagram DPI - Resolution for Mermaid diagrams (default: 150, range: 72-600)
  • Show Alert Labels - Display alert type labels (NOTE, TIP, etc.) in exported documents (default: off)

Uninstall

pip uninstall jupyterlab_export_markdown_extension

License

BSD 3-Clause License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jupyterlab_export_markdown_extension-1.3.2.tar.gz (521.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file jupyterlab_export_markdown_extension-1.3.2.tar.gz.

File metadata

File hashes

Hashes for jupyterlab_export_markdown_extension-1.3.2.tar.gz
Algorithm Hash digest
SHA256 dc9da2f1c850811ca81a1eafea7ec0512aec7338881d51e87cd8c19c78f95545
MD5 a0fb51e179859c02eaa80327350ce871
BLAKE2b-256 0a9f7a9f74fb22ca99141f0f57a18be381b41c0202bf122782c6a58a7bdd2690

See more details on using hashes here.

File details

Details for the file jupyterlab_export_markdown_extension-1.3.2-py3-none-any.whl.

File metadata

File hashes

Hashes for jupyterlab_export_markdown_extension-1.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 b449cd7e6a253c811e8bd5ab92246b539cecd1f1236fc8dd19b7ce490daf6e8a
MD5 87c041b5664e5ed5546089b9be7b7bc7
BLAKE2b-256 fa6ca57d79448ac6013d26de2be04005b41c3d9338978247abbc2b0430923ed2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page