Skip to main content

MkDocs plugin supports image lightbox with GLightbox.

Project description

MkDocs GLightbox

PyPI version PyPI downloads Codecov

A MkDocs plugin supports image lightbox with GLightbox.

GLightbox is a pure javascript lightbox library with mobile support.

Live demo with Material for MkDocs.

Dependency

  1. GLightbox javascript file and CSS file
    1. GLightbox==3.2.0

Usage

  1. Install the plugin from PyPI

    pip install mkdocs-glightbox
    
  2. Add glightbox plugin to your mkdocs.yml plugins sections:

    plugins:
       - glightbox
    
  3. All images will be added to the lightbox effect automatically, except images in an anchor tag and emoji images from pymdown-extensions.

  4. You may customize the plugin by passing options in mkdocs.yml:

    plugins:
       - glightbox:
           touchNavigation: true
           loop: false
           effect: zoom
           slide_effect: slide
           width: 100%
           height: auto
           zoomable: true
           draggable: true
           skip_classes:
             - custom-skip-class-name
           auto_caption: false
           caption_position: bottom
           background: white
           shadow: true
           manual: false
    
    Option Default Description
    touchNavigation true Enable or disable the touch navigation (swipe).
    loop false Loop slides on end.
    effect zoom Name of the effect on lightbox open. (zoom, fade, none)
    slide_effect slide Name of the effect on lightbox slide. (slide, zoom, fade, none)
    width auto Width for inline elements and iframes. You can use any unit for example 90% or 100vw for full width.
    height auto Height for inline elements and iframes. You can use any unit for example 90%, 100vh or auto.
    zoomable true Enable or disable zoomable images.
    draggable true Enable or disable mouse drag to go prev and next slide.
    skip_classes [ ] Disable lightbox of those image with specific custom class name.
    auto_caption false Enable or disable using alt of image as caption title automatically.
    caption_position bottom Default captions position. (bottom, top, left, right)
    background white The background CSS of lightbox image. The background will shown when the image is transparent. You can use any CSS value for the background for example #74b9ff or Gainsboro or none for nothing.
    shadow true Enable or disable the shadow of lightbox image. Disable it when the background is none to prevent shadow around the transparent image.
    manual false When true, lightbox has to be enabled for each image manually by adding on-glb class to it or adding glightbox: true meta on page.

    Check more options information on GLightbox Docs.

  5. For more flexibility:

    1. Disable by image: Disable the lightbox for specific images. Suitable for a few amount of images that don't need the lightbox effect.
    2. Disable by page: Disable the lightbox for specific pages. Suitable for a few amount of pages that don't need the lightbox effect.
    3. Enable by image: Disable the lightbox for specific pages but enable some images on those pages. Suitable for a few amount of images that need the lightbox effect.
    4. Disable globally but enable by image or page: Disable the lightbox globally but enable specific images or specific pages. Suitable for a large number of images or pages that don't need the lightbox effect.
  6. Support lightbox image caption, check more details on Caption.

  7. Support grouping images as galleries, check more details on Gallery.

[!NOTE] If this is your first time using the MkDocs plugin feature, you should know that MkDocs includes a default plugin named search. If you want to keep the search feature, you need to add the search plugin back to the plugins list.

How it works

  1. Copy GLightbox script file into site/assets/javascripts/ directory and CSS file into site/assets/stylesheets/ directory
  2. Import GLightbox script and CSS file and add javascript code on each page excluded disabled pages
  3. Search all image tags and warp with an anchor tag for GLightbox excluded images with skip class or already warped with an anchor tag

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

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

mkdocs-glightbox-0.4.0.tar.gz (32.0 kB view details)

Uploaded Source

Built Distribution

mkdocs_glightbox-0.4.0-py3-none-any.whl (31.2 kB view details)

Uploaded Python 3

File details

Details for the file mkdocs-glightbox-0.4.0.tar.gz.

File metadata

  • Download URL: mkdocs-glightbox-0.4.0.tar.gz
  • Upload date:
  • Size: 32.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.17

File hashes

Hashes for mkdocs-glightbox-0.4.0.tar.gz
Algorithm Hash digest
SHA256 392b34207bf95991071a16d5f8916d1d2f2cd5d5bb59ae2997485ccd778c70d9
MD5 e5f0698d4b6a7168607cd65b32347d54
BLAKE2b-256 865a0bc456397ba0acc684b5b1daa4ca232ed717938fd37198251d8bcc4053bf

See more details on using hashes here.

File details

Details for the file mkdocs_glightbox-0.4.0-py3-none-any.whl.

File metadata

File hashes

Hashes for mkdocs_glightbox-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e0107beee75d3eb7380ac06ea2d6eac94c999eaa49f8c3cbab0e7be2ac006ccf
MD5 323ecbe0efd0caffe8b395b4624312e1
BLAKE2b-256 c172b0c2128bb569c732c11ae8e49a777089e77d83c05946062caa19b841e6fb

See more details on using hashes here.

Supported by

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