1296 lines
30 KiB
HTML

<!doctype html>
<html lang="en" class="no-js">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta name="description" content="Demo site for Changemaker">
<meta name="author" content="Bunker Ops">
<link rel="canonical" href="http://betteredmonton.org/apps/homepage/">
<link rel="prev" href="../">
<link rel="next" href="../code-server/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.14">
<title>Homepage Dashboard - Changemaker Documentation</title>
<link rel="stylesheet" href="../../assets/stylesheets/main.342714a4.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.06af60db.min.css">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback">
<style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
<link rel="stylesheet" href="../../stylesheets/extra.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
<script>__md_scope=new URL("../..",location),__md_hash=e=>[...e].reduce(((e,_)=>(e<<5)-e+_.charCodeAt(0)),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
<meta property="og:type" content="website" >
<meta property="og:title" content="Homepage Dashboard - Changemaker Documentation" >
<meta property="og:description" content="Demo site for Changemaker" >
<meta property="og:image" content="http://betteredmonton.org/assets/images/social/apps/homepage.png" >
<meta property="og:image:type" content="image/png" >
<meta property="og:image:width" content="1200" >
<meta property="og:image:height" content="630" >
<meta property="og:url" content="http://betteredmonton.org/apps/homepage/" >
<meta name="twitter:card" content="summary_large_image" >
<meta name="twitter:title" content="Homepage Dashboard - Changemaker Documentation" >
<meta name="twitter:description" content="Demo site for Changemaker" >
<meta name="twitter:image" content="http://betteredmonton.org/assets/images/social/apps/homepage.png" >
</head>
<body dir="ltr" data-md-color-scheme="slate" data-md-color-primary="deep-purple" data-md-color-accent="amber">
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
<label class="md-overlay" for="__drawer"></label>
<div data-md-component="skip">
<a href="#homepage-dashboard-your-central-hub" class="md-skip">
Skip to content
</a>
</div>
<div data-md-component="announce">
<aside class="md-banner">
<div class="md-banner__inner md-grid md-typeset">
<a href="https://homepage.betteredmonton.org" class="login-button">Login</a>
Changemaker Archive. <a href="https://changemaker.bnkops.com">Learn more</a>
</div>
</aside>
</div>
<header class="md-header" data-md-component="header">
<nav class="md-header__inner md-grid" aria-label="Header">
<a href="../.." title="Changemaker Documentation" class="md-header__button md-logo" aria-label="Changemaker Documentation" data-md-component="logo">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54"/></svg>
</a>
<label class="md-header__button md-icon" for="__drawer">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z"/></svg>
</label>
<div class="md-header__title" data-md-component="header-title">
<div class="md-header__ellipsis">
<div class="md-header__topic">
<span class="md-ellipsis">
Changemaker Documentation
</span>
</div>
<div class="md-header__topic" data-md-component="header-topic">
<span class="md-ellipsis">
Homepage Dashboard
</span>
</div>
</div>
</div>
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" name="search">
<input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
<label class="md-search__icon md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z"/></svg>
</label>
<nav class="md-search__options" aria-label="Search">
<button type="reset" class="md-search__icon md-icon" title="Clear" aria-label="Clear" tabindex="-1">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/></svg>
</button>
</nav>
</form>
<div class="md-search__output">
<div class="md-search__scrollwrap" tabindex="0" data-md-scrollfix>
<div class="md-search-result" data-md-component="search-result">
<div class="md-search-result__meta">
Initializing search
</div>
<ol class="md-search-result__list" role="presentation"></ol>
</div>
</div>
</div>
</div>
</div>
</nav>
</header>
<div class="md-container" data-md-component="container">
<nav class="md-tabs" aria-label="Tabs" data-md-component="tabs">
<div class="md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item">
<a href="../.." class="md-tabs__link">
Home
</a>
</li>
<li class="md-tabs__item">
<a href="../../readme/" class="md-tabs__link">
Get Started
</a>
</li>
<li class="md-tabs__item md-tabs__item--active">
<a href="../" class="md-tabs__link">
Applications
</a>
</li>
<li class="md-tabs__item">
<a href="../../guides/" class="md-tabs__link">
Guides
</a>
</li>
<li class="md-tabs__item">
<a href="../../quick-commands/" class="md-tabs__link">
Quick Commands
</a>
</li>
</ul>
</div>
</nav>
<main class="md-main" data-md-component="main">
<div class="md-main__inner md-grid">
<div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary md-nav--lifted" aria-label="Navigation" data-md-level="0">
<label class="md-nav__title" for="__drawer">
<a href="../.." title="Changemaker Documentation" class="md-nav__button md-logo" aria-label="Changemaker Documentation" data-md-component="logo">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54"/></svg>
</a>
Changemaker Documentation
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../.." class="md-nav__link">
<span class="md-ellipsis">
Home
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../readme/" class="md-nav__link">
<span class="md-ellipsis">
Get Started
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--active md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" checked>
<div class="md-nav__link md-nav__container">
<a href="../" class="md-nav__link ">
<span class="md-ellipsis">
Applications
</span>
</a>
<label class="md-nav__link " for="__nav_3" id="__nav_3_label" tabindex="">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_3">
<span class="md-nav__icon md-icon"></span>
Applications
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--active">
<input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
<label class="md-nav__link md-nav__link--active" for="__toc">
<span class="md-ellipsis">
Homepage Dashboard
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<a href="./" class="md-nav__link md-nav__link--active">
<span class="md-ellipsis">
Homepage Dashboard
</span>
</a>
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
<label class="md-nav__title" for="__toc">
<span class="md-nav__icon md-icon"></span>
Table of contents
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#key-features" class="md-nav__link">
<span class="md-ellipsis">
Key Features
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#getting-started-with-homepage" class="md-nav__link">
<span class="md-ellipsis">
Getting Started with Homepage
</span>
</a>
<nav class="md-nav" aria-label="Getting Started with Homepage">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#accessing-homepage" class="md-nav__link">
<span class="md-ellipsis">
Accessing Homepage
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#basic-usage" class="md-nav__link">
<span class="md-ellipsis">
Basic Usage
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#further-information" class="md-nav__link">
<span class="md-ellipsis">
Further Information
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="../code-server/" class="md-nav__link">
<span class="md-ellipsis">
Code Server
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../flatnotes/" class="md-nav__link">
<span class="md-ellipsis">
Flatnotes
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../listmonk/" class="md-nav__link">
<span class="md-ellipsis">
Listmonk
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../nocodb/" class="md-nav__link">
<span class="md-ellipsis">
NocoDB
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../mkdocs-material/" class="md-nav__link">
<span class="md-ellipsis">
MkDocs Material
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../excalidraw/" class="md-nav__link">
<span class="md-ellipsis">
Excalidraw
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../gitea/" class="md-nav__link">
<span class="md-ellipsis">
Gitea
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../openwebui/" class="md-nav__link">
<span class="md-ellipsis">
OpenWebUI
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../monica-crm/" class="md-nav__link">
<span class="md-ellipsis">
Monica CRM
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../answer/" class="md-nav__link">
<span class="md-ellipsis">
Answer
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../ferdium/" class="md-nav__link">
<span class="md-ellipsis">
Ferdium
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../rocketchat/" class="md-nav__link">
<span class="md-ellipsis">
Rocket.Chat
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../portainer/" class="md-nav__link">
<span class="md-ellipsis">
Portainer (Docker UI)
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../n8n/" class="md-nav__link">
<span class="md-ellipsis">
n8n (Workflow Automation)
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4" >
<div class="md-nav__link md-nav__container">
<a href="../../guides/" class="md-nav__link ">
<span class="md-ellipsis">
Guides
</span>
</a>
<label class="md-nav__link " for="__nav_4" id="__nav_4_label" tabindex="0">
<span class="md-nav__icon md-icon"></span>
</label>
</div>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<span class="md-nav__icon md-icon"></span>
Guides
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../guides/authoring-content/" class="md-nav__link">
<span class="md-ellipsis">
Authoring Content
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../guides/ollama-vscode/" class="md-nav__link">
<span class="md-ellipsis">
Using Ollama in VS Code
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="../../quick-commands/" class="md-nav__link">
<span class="md-ellipsis">
Quick Commands
</span>
</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
<label class="md-nav__title" for="__toc">
<span class="md-nav__icon md-icon"></span>
Table of contents
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#key-features" class="md-nav__link">
<span class="md-ellipsis">
Key Features
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#getting-started-with-homepage" class="md-nav__link">
<span class="md-ellipsis">
Getting Started with Homepage
</span>
</a>
<nav class="md-nav" aria-label="Getting Started with Homepage">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#accessing-homepage" class="md-nav__link">
<span class="md-ellipsis">
Accessing Homepage
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#basic-usage" class="md-nav__link">
<span class="md-ellipsis">
Basic Usage
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#further-information" class="md-nav__link">
<span class="md-ellipsis">
Further Information
</span>
</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-content" data-md-component="content">
<article class="md-content__inner md-typeset">
<h1 id="homepage-dashboard-your-central-hub">Homepage Dashboard: Your Central Hub<a class="headerlink" href="#homepage-dashboard-your-central-hub" title="Permanent link">&para;</a></h1>
<p>Homepage is your personal, customizable application dashboard. Within Changemaker V5, it acts as the central command center, providing a unified interface to access all integrated services, monitor their status, and keep bookmarks for frequently used internal and external pages.</p>
<h2 id="key-features">Key Features<a class="headerlink" href="#key-features" title="Permanent link">&para;</a></h2>
<ul>
<li><strong>Unified Access</strong>: Quickly launch any Changemaker application (Code Server, Flatnotes, Listmonk, NocoDB, etc.) from one place.</li>
<li><strong>Service Status Monitoring</strong>: (If configured) See at a glance if your services are online and operational.</li>
<li><strong>Customizable Layout</strong>: Organize your dashboard with groups, links, and widgets to fit your workflow.</li>
<li><strong>Bookmarks</strong>: Keep important links (both internal Changemaker services and external websites) readily accessible.</li>
<li><strong>Themeable</strong>: Customize the look and feel to your preference.</li>
<li><strong>Lightweight &amp; Fast</strong>: Loads quickly and efficiently.</li>
</ul>
<h2 id="getting-started-with-homepage">Getting Started with Homepage<a class="headerlink" href="#getting-started-with-homepage" title="Permanent link">&para;</a></h2>
<h3 id="accessing-homepage">Accessing Homepage<a class="headerlink" href="#accessing-homepage" title="Permanent link">&para;</a></h3>
<ol>
<li><strong>URL</strong>: You can typically access Homepage locally via <code>http://localhost:3010/</code> (or your configured external URL if set up).</li>
<li><strong>No Login Required (Usually)</strong>: By default, Homepage itself doesn't require a login, but the services it links to (like Code Server or Listmonk) will have their own authentication.</li>
</ol>
<h3 id="basic-usage">Basic Usage<a class="headerlink" href="#basic-usage" title="Permanent link">&para;</a></h3>
<ol>
<li>
<p><strong>Exploring the Dashboard</strong>:</p>
<ul>
<li>The main view will show configured service groups and individual service links.</li>
<li>Clicking on a service link (e.g., "Code Server") will open that application in a new tab or the current window, depending on its configuration.</li>
</ul>
</li>
<li>
<p><strong>Understanding the Default Configuration</strong>:</p>
<ul>
<li>Changemaker V5 comes with a pre-configured <code>settings.yaml</code>, <code>services.yaml</code>, and potentially <code>bookmarks.yaml</code> for Homepage, located in the <code>configs/homepage/</code> directory within your Changemaker project structure.</li>
<li>These files define what you see on your dashboard.</li>
</ul>
</li>
<li>
<p><strong>Customizing Your Dashboard (Advanced)</strong>:</p>
<ul>
<li>To customize Homepage, you'll typically edit its YAML configuration files. This can be done using Code Server.</li>
<li><strong>Navigate to Configuration</strong>: In Code Server, open your Changemaker project folder, then navigate to <code>configs/homepage/</code>.</li>
<li><strong>Edit <code>services.yaml</code></strong>: To add, remove, or modify the services displayed.
<em>Example: Adding a new service</em>
<div class="highlight"><pre><span></span><code><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a><span class="c1"># In services.yaml</span>
<a id="__codelineno-0-2" name="__codelineno-0-2" href="#__codelineno-0-2"></a><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">My Services</span><span class="p">:</span>
<a id="__codelineno-0-3" name="__codelineno-0-3" href="#__codelineno-0-3"></a><span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">My New App</span><span class="p">:</span>
<a id="__codelineno-0-4" name="__codelineno-0-4" href="#__codelineno-0-4"></a><span class="w"> </span><span class="nt">href</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">http://localhost:XXXX</span><span class="w"> </span><span class="c1"># URL of your new app</span>
<a id="__codelineno-0-5" name="__codelineno-0-5" href="#__codelineno-0-5"></a><span class="w"> </span><span class="nt">description</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Description of my new app</span>
<a id="__codelineno-0-6" name="__codelineno-0-6" href="#__codelineno-0-6"></a><span class="w"> </span><span class="nt">icon</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">fas fa-rocket</span><span class="w"> </span><span class="c1"># Font Awesome icon</span>
</code></pre></div></li>
<li><strong>Edit <code>bookmarks.yaml</code></strong>: To add your own bookmarks, organized into groups.
<em>Example: Adding a bookmark group</em>
<div class="highlight"><pre><span></span><code><a id="__codelineno-1-1" name="__codelineno-1-1" href="#__codelineno-1-1"></a><span class="c1"># In bookmarks.yaml</span>
<a id="__codelineno-1-2" name="__codelineno-1-2" href="#__codelineno-1-2"></a><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">Development</span><span class="p">:</span>
<a id="__codelineno-1-3" name="__codelineno-1-3" href="#__codelineno-1-3"></a><span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">GitHub</span><span class="p">:</span>
<a id="__codelineno-1-4" name="__codelineno-1-4" href="#__codelineno-1-4"></a><span class="w"> </span><span class="nt">href</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">https://github.com/</span>
<a id="__codelineno-1-5" name="__codelineno-1-5" href="#__codelineno-1-5"></a><span class="w"> </span><span class="nt">icon</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">fab fa-github</span>
</code></pre></div></li>
<li><strong>Edit <code>settings.yaml</code></strong>: For general settings like page title, background, etc.</li>
<li><strong>Edit <code>widgets.yaml</code></strong>: To add dynamic information like weather, search bars, etc.</li>
<li><strong>Apply Changes</strong>: After saving changes to these YAML files, you usually need to restart the Homepage Docker container for them to take effect, or Homepage might pick them up automatically depending on its setup.</li>
</ul>
</li>
</ol>
<h2 id="further-information">Further Information<a class="headerlink" href="#further-information" title="Permanent link">&para;</a></h2>
<p>For more detailed information on configuring Homepage, available widgets, and advanced customization options, please refer to the <a href="https://gethomepage.dev/latest/">official Homepage Documentation</a>.</p>
</article>
</div>
<script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
</div>
<button type="button" class="md-top md-icon" data-md-component="top" hidden>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8z"/></svg>
Back to top
</button>
</main>
<footer class="md-footer">
<div class="md-footer-meta md-typeset">
<div class="md-footer-meta__inner md-grid">
<div class="md-copyright">
<div class="md-copyright__highlight">
Copyright &copy; 2024 The Bunker Operations - Built with Change Maker
</div>
Made with
<a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
Material for MkDocs
</a>
</div>
</div>
</div>
</footer>
</div>
<div class="md-dialog" data-md-component="dialog">
<div class="md-dialog__inner md-typeset"></div>
</div>
<script id="__config" type="application/json">{"base": "../..", "features": ["navigation.tracking", "navigation.indexes", "navigation.collapse", "navigation.path", "content.code.copy", "navigation.top", "navigation.tabs"], "search": "../../assets/javascripts/workers/search.d50fe291.min.js", "tags": null, "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": null}</script>
<script src="../../assets/javascripts/bundle.13a4f30d.min.js"></script>
</body>
</html>