Skip to content

Under Construction

This page is under construction. Please check back later for comprehensive guidance

Material for MkDocs Plugin Installation

This guide explains how to install and configure additional plugins for the Google Security Suite documentation site. These plugins enhance the site with features like better search, image handling, and analytics.

Plugin Installation Process

Step 1: Basic Installation

First, ensure you have the basic requirements installed:

pip install mkdocs mkdocs-material pymdown-extensions pillow

Step 2: Install Additional Plugins

Install each plugin individually to test compatibility:

# Tag support
pip install mkdocs-material-extensions

# Minification
pip install mkdocs-minify-plugin

# Date information
pip install mkdocs-git-revision-date-localized-plugin

# Image lightbox
pip install mkdocs-glightbox

# Social cards
pip install mkdocs-material[imaging]

Step 3: Enable Plugins in mkdocs.yml

After installing the plugins, enable them one by one in your mkdocs.yml file:

# Plugins
plugins:
  - search
  - tags
  # Add these one by one, testing after each addition
  - minify:
      minify_html: true
  - git-revision-date-localized:
      enable_creation_date: true
      type: date
  - glightbox:
      touchNavigation: true
      loop: false
      effect: zoom
      width: 100%
      height: auto
      zoomable: true
      draggable: true
  - social

Plugin Descriptions

Search Plugin

The default search plugin with enhanced features:

plugins:
  - search:
      separator: '[\s\-,:!=\[\]()"/]+|(?!\b)(?=[A-Z][a-z])|\.(?!\d)|&[lg]t;'
      lang:
        - en

Tags Plugin

Adds support for content categorization:

plugins:
  - tags:
      tags_file: tags.md

Minify Plugin

Reduces the size of HTML, CSS, and JavaScript files:

plugins:
  - minify:
      minify_html: true
      minify_js: true
      minify_css: true
      htmlmin_opts:
        remove_comments: true

Git Revision Date Plugin

Displays when pages were last updated:

plugins:
  - git-revision-date-localized:
      enable_creation_date: true
      type: date
      fallback_to_build_date: true

GLightbox Plugin

Adds a lightbox for images:

plugins:
  - glightbox:
      touchNavigation: true
      loop: false
      effect: zoom
      width: 100%
      height: auto
      zoomable: true
      draggable: true

Social Plugin

Generates social card images for sharing:

plugins:
  - social:
      cards_color:
        fill: "#0F9D58"
        text: "#FFFFFF"

Additional Configuration

Analytics Integration

Configure Google Analytics:

extra:
  analytics:
    provider: google
    property: G-XXXXXXXXXX

Add cookie consent controls:

extra:
  consent:
    title: Cookie consent
    description: >- 
      We use cookies to recognize your repeated visits and preferences, as well
      as to measure the effectiveness of our documentation and whether users
      find what they're searching for.
    actions:
      - accept
      - reject
      - manage

Troubleshooting

If you encounter issues with any plugins:

  1. Install plugins one at a time
  2. Verify each plugin works before adding the next
  3. Check plugin documentation for configuration requirements
  4. Review logs for specific error messages
  5. Ensure all dependencies are installed

For specific plugin issues, refer to the plugin's documentation or GitHub repository.