@rhizomatics/signalk-boat-tech-directory-plugin 1.2.3 → 1.2.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/public/404.html +5 -4
- package/public/_astro/common.CNhHhUwb.css +3 -0
- package/public/charts/index.html +13 -9
- package/public/checklists/index.html +81 -0
- package/public/contributing/index.html +8 -8
- package/public/education/index.html +9 -8
- package/public/favicon.svg +10 -0
- package/public/images/icons/pypi.ico +0 -0
- package/public/index-of-terms/index.html +46 -16
- package/public/index.html +10 -10
- package/public/llms-full.txt +142 -25
- package/public/llms-small.txt +27 -9
- package/public/llms.txt +12 -8
- package/public/news/index.html +8 -8
- package/public/open-source-projects/index.html +16 -11
- package/public/pagefind/fragment/en_23ab65b.pf_fragment +0 -0
- package/public/pagefind/fragment/en_2c2287e.pf_fragment +0 -0
- package/public/pagefind/fragment/en_3e85359.pf_fragment +0 -0
- package/public/pagefind/fragment/en_4639db7.pf_fragment +0 -0
- package/public/pagefind/fragment/en_867f328.pf_fragment +0 -0
- package/public/pagefind/fragment/en_984e7e2.pf_fragment +0 -0
- package/public/pagefind/fragment/en_98947e1.pf_fragment +0 -0
- package/public/pagefind/fragment/en_a5f2351.pf_fragment +0 -0
- package/public/pagefind/fragment/en_e8434a4.pf_fragment +0 -0
- package/public/pagefind/fragment/en_f135591.pf_fragment +0 -0
- package/public/pagefind/fragment/en_ff67eba.pf_fragment +0 -0
- package/public/pagefind/index/en_53ed34d.pf_index +0 -0
- package/public/pagefind/pagefind-entry.json +1 -1
- package/public/pagefind/pagefind.en_9cb4ba703f.pf_meta +0 -0
- package/public/protocols/index.html +17 -9
- package/public/reference/index.html +8 -17
- package/public/servicing/index.html +110 -0
- package/public/sitemap-0.xml +1 -1
- package/public/sitemap.xml +1 -1
- package/public/social/index.html +13 -10
- package/public/vendors/index.html +14 -9
- package/public/_astro/common.BVvL3Ez1.css +0 -3
- package/public/pagefind/fragment/en_234f624.pf_fragment +0 -0
- package/public/pagefind/fragment/en_3b4a294.pf_fragment +0 -0
- package/public/pagefind/fragment/en_4bae6d4.pf_fragment +0 -0
- package/public/pagefind/fragment/en_4c89e32.pf_fragment +0 -0
- package/public/pagefind/fragment/en_66f3f96.pf_fragment +0 -0
- package/public/pagefind/fragment/en_89b1310.pf_fragment +0 -0
- package/public/pagefind/fragment/en_a1b2b20.pf_fragment +0 -0
- package/public/pagefind/fragment/en_c5d7cb8.pf_fragment +0 -0
- package/public/pagefind/fragment/en_df5e3a4.pf_fragment +0 -0
- package/public/pagefind/index/en_c62e1ae.pf_index +0 -0
- package/public/pagefind/pagefind.en_4d1aeefb59.pf_meta +0 -0
package/public/social/index.html
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en" dir="ltr" data-theme="dark" data-has-sidebar class="astro-
|
|
1
|
+
<!DOCTYPE html><html lang="en" dir="ltr" data-theme="dark" data-has-sidebar class="astro-g5ptsecz"><head><meta charset="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><title>Social | Boat Tech Directory</title><link rel="canonical" href="https://boat-tech-directory.rhizomatics.org.uk/@rhizomatics/signalk-boat-tech-directory-plugin/social/"/><link rel="sitemap" href="/@rhizomatics/signalk-boat-tech-directory-plugin/sitemap-index.xml"/><link rel="shortcut icon" href="/@rhizomatics/signalk-boat-tech-directory-plugin/favicon.svg" type="image/svg+xml"/><meta name="generator" content="Astro v7.3.2"/><meta name="generator" content="Starlight v0.42.1"/><meta property="og:title" content="Social"/><meta property="og:type" content="article"/><meta property="og:url" content="https://boat-tech-directory.rhizomatics.org.uk/@rhizomatics/signalk-boat-tech-directory-plugin/social/"/><meta property="og:locale" content="en"/><meta property="og:description" content="Blogs, vlogs, video channels and forums."/><meta property="og:site_name" content="Boat Tech Directory"/><meta name="description" content="Blogs, vlogs, video channels and forums."/><meta property="og:image" content="https://boat-tech-directory.rhizomatics.org.uk/images/social-preview.jpg"/><meta property="og:image:width" content="1536"/><meta property="og:image:height" content="1024"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:image" content="https://boat-tech-directory.rhizomatics.org.uk/images/social-preview.jpg"/><script>
|
|
2
2
|
window.StarlightThemeProvider = (() => {
|
|
3
3
|
const storedTheme =
|
|
4
4
|
typeof localStorage !== 'undefined' && localStorage.getItem('starlight-theme');
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
},
|
|
25
25
|
};
|
|
26
26
|
})();
|
|
27
|
-
</script><template id="theme-icons"><svg aria-hidden="true" class="light astro-
|
|
27
|
+
</script><template id="theme-icons"><svg aria-hidden="true" class="light astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M5 12a1 1 0 0 0-1-1H3a1 1 0 0 0 0 2h1a1 1 0 0 0 1-1Zm.64 5-.71.71a1 1 0 0 0 0 1.41 1 1 0 0 0 1.41 0l.71-.71A1 1 0 0 0 5.64 17ZM12 5a1 1 0 0 0 1-1V3a1 1 0 0 0-2 0v1a1 1 0 0 0 1 1Zm5.66 2.34a1 1 0 0 0 .7-.29l.71-.71a1 1 0 1 0-1.41-1.41l-.66.71a1 1 0 0 0 0 1.41 1 1 0 0 0 .66.29Zm-12-.29a1 1 0 0 0 1.41 0 1 1 0 0 0 0-1.41l-.71-.71a1.004 1.004 0 1 0-1.43 1.41l.73.71ZM21 11h-1a1 1 0 0 0 0 2h1a1 1 0 0 0 0-2Zm-2.64 6A1 1 0 0 0 17 18.36l.71.71a1 1 0 0 0 1.41 0 1 1 0 0 0 0-1.41l-.76-.66ZM12 6.5a5.5 5.5 0 1 0 5.5 5.5A5.51 5.51 0 0 0 12 6.5Zm0 9a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7Zm0 3.5a1 1 0 0 0-1 1v1a1 1 0 0 0 2 0v-1a1 1 0 0 0-1-1Z"/></svg><svg aria-hidden="true" class="dark astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21.64 13a1 1 0 0 0-1.05-.14 8.049 8.049 0 0 1-3.37.73 8.15 8.15 0 0 1-8.14-8.1 8.59 8.59 0 0 1 .25-2A1 1 0 0 0 8 2.36a10.14 10.14 0 1 0 14 11.69 1 1 0 0 0-.36-1.05Zm-9.5 6.69A8.14 8.14 0 0 1 7.08 5.22v.27a10.15 10.15 0 0 0 10.14 10.14 9.784 9.784 0 0 0 2.1-.22 8.11 8.11 0 0 1-7.18 4.32v-.04Z"/></svg><svg aria-hidden="true" class="auto astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21 14h-1V7a3 3 0 0 0-3-3H7a3 3 0 0 0-3 3v7H3a1 1 0 0 0-1 1v2a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3v-2a1 1 0 0 0-1-1ZM6 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7H6V7Zm14 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1h16v1Z"/></svg></template><link rel="stylesheet" href="/@rhizomatics/signalk-boat-tech-directory-plugin/_astro/print.ehPL0gv-.css" media="print"><link rel="stylesheet" href="/@rhizomatics/signalk-boat-tech-directory-plugin/_astro/common.CNhHhUwb.css"><script type="module" src="/@rhizomatics/signalk-boat-tech-directory-plugin/_astro/page.LAbJoB63.js"></script></head><body class="astro-g5ptsecz"><a class="sl-skip-link astro-qb7clj6f" href="#_top">Skip to content</a><div class="page sl-flex astro-yntsjkba"><header class="header astro-yntsjkba"><div class="header astro-by6fddyj"><div class="title-wrapper sl-flex astro-by6fddyj"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/" class="site-title sl-flex astro-6rvad3va"><span class="astro-6rvad3va" translate="no">Boat Tech Directory</span></a></div><div class="sl-flex print:hidden astro-by6fddyj"><site-search class="astro-by6fddyj astro-ac66eqjo" data-translations="{"placeholder":"Search"}"><button data-open-modal disabled aria-label="Search" aria-keyshortcuts="Control+K" class="astro-ac66eqjo"><svg aria-hidden="true" class="astro-ac66eqjo astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21.71 20.29 18 16.61A9 9 0 1 0 16.61 18l3.68 3.68a.999.999 0 0 0 1.42 0 1 1 0 0 0 0-1.39ZM11 18a7 7 0 1 1 0-14 7 7 0 0 1 0 14Z"/></svg><span class="sl-hidden md:sl-block astro-ac66eqjo" aria-hidden="true">Search</span><kbd class="sl-hidden md:sl-flex astro-ac66eqjo" style="display: none;"><kbd class="astro-ac66eqjo">Ctrl</kbd><kbd class="astro-ac66eqjo">K</kbd></kbd></button><dialog style="padding:0" aria-label="Search" class="astro-ac66eqjo"><div class="dialog-frame sl-flex astro-ac66eqjo"><button data-close-modal class="sl-flex md:sl-hidden astro-ac66eqjo">Cancel</button><div class="search-container astro-ac66eqjo"><div id="starlight__search" class="astro-ac66eqjo"><form id="starlight__search-form" role="search" aria-label="Search" class="astro-ac66eqjo"><input id="starlight__search-input" type="text" autocapitalize="none" enterkeyhint="search" placeholder="Search" title="Search" class="astro-ac66eqjo"><button type="button" id="starlight__search-clear" hidden class="astro-ac66eqjo">Search</button></form><div id="starlight__search-results-area" hidden class="astro-ac66eqjo"><p id="starlight__search-message" role="status" class="astro-ac66eqjo"></p><ol id="starlight__search-results" class="astro-ac66eqjo"></ol></div></div></div></div></dialog></site-search><script>
|
|
28
28
|
(() => {
|
|
29
29
|
const openBtn = document.querySelector('button[data-open-modal]');
|
|
30
30
|
const shortcut = openBtn?.querySelector('kbd');
|
|
@@ -36,9 +36,9 @@
|
|
|
36
36
|
}
|
|
37
37
|
shortcut.style.display = '';
|
|
38
38
|
})();
|
|
39
|
-
</script><script type="module" src="/@rhizomatics/signalk-boat-tech-directory-plugin/_astro/Search.astro_astro_type_script_index_0_lang.3ca-UBSH.js"></script></div><div class="sl-hidden md:sl-flex print:hidden right-group astro-
|
|
39
|
+
</script><script type="module" src="/@rhizomatics/signalk-boat-tech-directory-plugin/_astro/Search.astro_astro_type_script_index_0_lang.3ca-UBSH.js"></script></div><div class="sl-hidden md:sl-flex print:hidden right-group astro-by6fddyj"><div class="sl-flex social-icons astro-by6fddyj"><a href="https://github.com/rhizomatics/boat-tech-directory" rel="me" class="sl-flex astro-n2mnl6yq"><span class="sr-only astro-n2mnl6yq">GitHub</span><svg aria-hidden="true" class="astro-n2mnl6yq astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M12 .3a12 12 0 0 0-3.8 23.38c.6.12.83-.26.83-.57L9 21.07c-3.34.72-4.04-1.61-4.04-1.61-.55-1.39-1.34-1.76-1.34-1.76-1.08-.74.09-.73.09-.73 1.2.09 1.83 1.24 1.83 1.24 1.08 1.83 2.81 1.3 3.5 1 .1-.78.42-1.31.76-1.61-2.67-.3-5.47-1.33-5.47-5.93 0-1.31.47-2.38 1.24-3.22-.14-.3-.54-1.52.1-3.18 0 0 1-.32 3.3 1.23a11.5 11.5 0 0 1 6 0c2.28-1.55 3.29-1.23 3.29-1.23.64 1.66.24 2.88.12 3.18a4.65 4.65 0 0 1 1.23 3.22c0 4.61-2.8 5.63-5.48 5.92.42.36.81 1.1.81 2.22l-.01 3.29c0 .31.2.69.82.57A12 12 0 0 0 12 .3Z"/></svg></a></div><starlight-theme-select><label style="--sl-select-width: 6.25em" class="astro-2z5xp7gb"><span class="sr-only astro-2z5xp7gb">Select theme</span><svg aria-hidden="true" class="icon label-icon astro-2z5xp7gb astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21 14h-1V7a3 3 0 0 0-3-3H7a3 3 0 0 0-3 3v7H3a1 1 0 0 0-1 1v2a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3v-2a1 1 0 0 0-1-1ZM6 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7H6V7Zm14 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1h16v1Z"/></svg><select autocomplete="off" class="astro-2z5xp7gb"><option value="dark" class="astro-2z5xp7gb">Dark</option><option value="light" class="astro-2z5xp7gb">Light</option><option value="auto" selected class="astro-2z5xp7gb">Auto</option></select><svg aria-hidden="true" class="icon caret astro-2z5xp7gb astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M17 9.17a1 1 0 0 0-1.41 0L12 12.71 8.46 9.17a1 1 0 1 0-1.41 1.42l4.24 4.24a1.002 1.002 0 0 0 1.42 0L17 10.59a1.002 1.002 0 0 0 0-1.42Z"/></svg></label></starlight-theme-select><script>
|
|
40
40
|
StarlightThemeProvider.updatePickers();
|
|
41
|
-
</script><script type="module">var e=`starlight-theme`,t=e=>e===`auto`||e===`dark`||e===`light`?e:`auto`,n=()=>t(typeof localStorage<`u`&&localStorage.getItem(e));function r(t){typeof localStorage<`u`&&localStorage.setItem(e,t===`light`||t===`dark`?t:``)}var i=()=>matchMedia(`(prefers-color-scheme: light)`).matches?`light`:`dark`;function a(e){StarlightThemeProvider.updatePickers(e),document.documentElement.dataset.theme=e===`auto`?i():e,r(e)}matchMedia(`(prefers-color-scheme: light)`).addEventListener(`change`,()=>{n()===`auto`&&a(`auto`)});var o=class extends HTMLElement{constructor(){super(),a(n()),this.querySelector(`select`)?.addEventListener(`change`,e=>{e.currentTarget instanceof HTMLSelectElement&&a(t(e.currentTarget.value))})}};customElements.define(`starlight-theme-select`,o);</script><script type="module">var e=class extends HTMLElement{constructor(){super();let e=this.querySelector(`select`);e&&(e.addEventListener(`change`,e=>{e.currentTarget instanceof HTMLSelectElement&&(window.location.pathname=e.currentTarget.value)}),window.addEventListener(`pageshow`,t=>{if(!t.persisted)return;let n=e.querySelector(`option[selected]`)?.index;n!==e.selectedIndex&&(e.selectedIndex=n??0)}))}};customElements.define(`starlight-lang-select`,e);</script></div></div></header><nav class="sidebar print:hidden astro-
|
|
41
|
+
</script><script type="module">var e=`starlight-theme`,t=e=>e===`auto`||e===`dark`||e===`light`?e:`auto`,n=()=>t(typeof localStorage<`u`&&localStorage.getItem(e));function r(t){typeof localStorage<`u`&&localStorage.setItem(e,t===`light`||t===`dark`?t:``)}var i=()=>matchMedia(`(prefers-color-scheme: light)`).matches?`light`:`dark`;function a(e){StarlightThemeProvider.updatePickers(e),document.documentElement.dataset.theme=e===`auto`?i():e,r(e)}matchMedia(`(prefers-color-scheme: light)`).addEventListener(`change`,()=>{n()===`auto`&&a(`auto`)});var o=class extends HTMLElement{constructor(){super(),a(n()),this.querySelector(`select`)?.addEventListener(`change`,e=>{e.currentTarget instanceof HTMLSelectElement&&a(t(e.currentTarget.value))})}};customElements.define(`starlight-theme-select`,o);</script><script type="module">var e=class extends HTMLElement{constructor(){super();let e=this.querySelector(`select`);e&&(e.addEventListener(`change`,e=>{e.currentTarget instanceof HTMLSelectElement&&(window.location.pathname=e.currentTarget.value)}),window.addEventListener(`pageshow`,t=>{if(!t.persisted)return;let n=e.querySelector(`option[selected]`)?.index;n!==e.selectedIndex&&(e.selectedIndex=n??0)}))}};customElements.define(`starlight-lang-select`,e);</script></div></div></header><nav class="sidebar print:hidden astro-yntsjkba" aria-label="Main"><button popovertarget="starlight__sidebar" class="sl-menu-button sl-flex md:sl-hidden print:hidden astro-r2osgdlg"><svg aria-hidden="true" class="open-menu astro-r2osgdlg astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M3 8h18a1 1 0 1 0 0-2H3a1 1 0 0 0 0 2Zm18 8H3a1 1 0 0 0 0 2h18a1 1 0 0 0 0-2Zm0-5H3a1 1 0 0 0 0 2h18a1 1 0 0 0 0-2Z"/></svg><svg aria-hidden="true" class="close-menu astro-r2osgdlg astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="m13.41 12 6.3-6.29a1.004 1.004 0 1 0-1.42-1.42L12 10.59l-6.29-6.3a1.004 1.004 0 0 0-1.42 1.42l6.3 6.29-6.3 6.29a1 1 0 0 0 0 1.42.998.998 0 0 0 1.42 0l6.29-6.3 6.29 6.3a.999.999 0 0 0 1.42 0 1 1 0 0 0 0-1.42L13.41 12Z"/></svg><span class="sr-only astro-r2osgdlg">Menu</span></button><script type="module">var e=class extends HTMLElement{constructor(){super();let e=matchMedia(`(min-width: 50em)`),t=()=>{this.popover=e.matches?null:`auto`};t(),e.addEventListener(`change`,()=>t()),this.addEventListener(`toggle`,({newState:e})=>this.trapFocus(e===`open`))}trapFocus(e){document.querySelectorAll(`.main-frame, .sl-skip-link`).forEach(t=>{t.toggleAttribute(`inert`,e)})}};customElements.define(`sl-sidebar-pane`,e);</script><sl-sidebar-pane popover id="starlight__sidebar" class="sidebar-pane astro-yntsjkba"><div class="sidebar-content sl-flex astro-yntsjkba"><sl-sidebar-state-persist data-hash="0920a4u" class="astro-ipdry5cl"><script aria-hidden="true">
|
|
42
42
|
(() => {
|
|
43
43
|
try {
|
|
44
44
|
if (!matchMedia('(min-width: 50em)').matches) return;
|
|
@@ -61,19 +61,20 @@
|
|
|
61
61
|
);
|
|
62
62
|
} catch {}
|
|
63
63
|
})();
|
|
64
|
-
</script><ul class="top-level astro-wv7whodv"><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Home</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/social/" aria-current="page" class="large astro-wv7whodv"><span class="astro-wv7whodv">Social</span></a><ul class="page-toc astro-wv7whodv"><li class="
|
|
64
|
+
</script><ul class="top-level astro-wv7whodv"><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Home</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/social/" aria-current="page" class="large astro-wv7whodv"><span class="astro-wv7whodv">Social</span></a><ul class="page-toc astro-wv7whodv"><li class="astro-wv7whodv"><a href="#blogs" class="astro-wv7whodv">Blogs</a></li><li class="astro-wv7whodv"><a href="#vlogs" class="astro-wv7whodv">Vlogs</a></li><li class="astro-wv7whodv"><a href="#forums" class="astro-wv7whodv">Forums</a></li></ul></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/charts/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Charts and Data</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/open-source-projects/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Open Source Projects</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/protocols/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Protocols</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/vendors/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Vendors</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/news/" class="large astro-wv7whodv"><span class="astro-wv7whodv">News</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/education/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Education</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/servicing/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Servicing and Spares</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/checklists/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Checklists</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/reference/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Reference</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/index-of-terms/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Index</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/contributing/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Contributing</span></a></li></ul><script aria-hidden="true">
|
|
65
65
|
(() => {
|
|
66
66
|
const scroller = document.getElementById('starlight__sidebar');
|
|
67
67
|
if (!window._starlightScrollRestore || !scroller) return;
|
|
68
68
|
scroller.scrollTop = window._starlightScrollRestore;
|
|
69
69
|
delete window._starlightScrollRestore;
|
|
70
70
|
})();
|
|
71
|
-
</script></sl-sidebar-state-persist><div class="md:sl-hidden astro-wv7whodv"><div class="mobile-preferences sl-flex astro-
|
|
71
|
+
</script></sl-sidebar-state-persist><div class="md:sl-hidden astro-wv7whodv"><div class="mobile-preferences sl-flex astro-p4azlveh"><div class="social-icons astro-p4azlveh"><a href="https://github.com/rhizomatics/boat-tech-directory" rel="me" class="sl-flex astro-n2mnl6yq"><span class="sr-only astro-n2mnl6yq">GitHub</span><svg aria-hidden="true" class="astro-n2mnl6yq astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M12 .3a12 12 0 0 0-3.8 23.38c.6.12.83-.26.83-.57L9 21.07c-3.34.72-4.04-1.61-4.04-1.61-.55-1.39-1.34-1.76-1.34-1.76-1.08-.74.09-.73.09-.73 1.2.09 1.83 1.24 1.83 1.24 1.08 1.83 2.81 1.3 3.5 1 .1-.78.42-1.31.76-1.61-2.67-.3-5.47-1.33-5.47-5.93 0-1.31.47-2.38 1.24-3.22-.14-.3-.54-1.52.1-3.18 0 0 1-.32 3.3 1.23a11.5 11.5 0 0 1 6 0c2.28-1.55 3.29-1.23 3.29-1.23.64 1.66.24 2.88.12 3.18a4.65 4.65 0 0 1 1.23 3.22c0 4.61-2.8 5.63-5.48 5.92.42.36.81 1.1.81 2.22l-.01 3.29c0 .31.2.69.82.57A12 12 0 0 0 12 .3Z"/></svg></a></div><starlight-theme-select><label style="--sl-select-width: 6.25em" class="astro-2z5xp7gb"><span class="sr-only astro-2z5xp7gb">Select theme</span><svg aria-hidden="true" class="icon label-icon astro-2z5xp7gb astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21 14h-1V7a3 3 0 0 0-3-3H7a3 3 0 0 0-3 3v7H3a1 1 0 0 0-1 1v2a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3v-2a1 1 0 0 0-1-1ZM6 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7H6V7Zm14 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1h16v1Z"/></svg><select autocomplete="off" class="astro-2z5xp7gb"><option value="dark" class="astro-2z5xp7gb">Dark</option><option value="light" class="astro-2z5xp7gb">Light</option><option value="auto" selected class="astro-2z5xp7gb">Auto</option></select><svg aria-hidden="true" class="icon caret astro-2z5xp7gb astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M17 9.17a1 1 0 0 0-1.41 0L12 12.71 8.46 9.17a1 1 0 1 0-1.41 1.42l4.24 4.24a1.002 1.002 0 0 0 1.42 0L17 10.59a1.002 1.002 0 0 0 0-1.42Z"/></svg></label></starlight-theme-select><script>
|
|
72
72
|
StarlightThemeProvider.updatePickers();
|
|
73
|
-
</script></div></div></div></
|
|
73
|
+
</script></div></div></div></sl-sidebar-pane></nav><div class="main-frame astro-yntsjkba"><script type="module">var e=document.getElementById(`starlight__sidebar`),t=e?.querySelector(`sl-sidebar-state-persist`),n=`sl-sidebar-state`,r=()=>{let r=[],i=t?.dataset.hash||``;try{let e=sessionStorage.getItem(n),t=JSON.parse(e||`{}`);Array.isArray(t.open)&&t.hash===i&&(r=t.open)}catch{}return{hash:i,open:r,scroll:e?.scrollTop||0}},i=e=>{try{sessionStorage.setItem(n,JSON.stringify(e))}catch{}},a=()=>i(r()),o=(e,t)=>{let n=r();n.open[t]=e,i(n)};t?.addEventListener(`click`,e=>{if(!(e.target instanceof Element))return;let t=e.target.closest(`summary`)?.closest(`details`);if(!t)return;let n=t.querySelector(`sl-sidebar-restore`),r=parseInt(n?.dataset.index||``);isNaN(r)||o(!t.open,r)}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&a()});</script><div class="lg:sl-flex astro-lrzkfocr"><div class="main-pane astro-lrzkfocr"><main data-pagefind-body class="astro-g5ptsecz" lang="en" dir="ltr"><div class="content-panel astro-a7po4psb"><div class="sl-container astro-a7po4psb"><h1 id="_top" class="astro-bebwqqxs">Social</h1></div></div><div class="content-panel astro-a7po4psb"><div class="sl-container astro-a7po4psb"><div class="sl-markdown-content"><!-- Generated from ../../../../README.md by scripts/sync-readme.mjs — do not edit directly. -->
|
|
74
74
|
<div class="sl-heading-wrapper level-h3"><h3 id="blogs">Blogs</h3><a class="sl-anchor-link" href="#blogs"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24" fill="currentColor"><path d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 1 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 0 0-1.42-1.42m8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 1 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 0 0 0 1.42 1 1 0 0 0 1.42 0l3.88-3.89a4.49 4.49 0 0 0 0-6.33M8.83 15.17a1 1 0 0 0 .71.29 1 1 0 0 0 .71-.29l4.92-4.92a1 1 0 1 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section titled “Blogs”</span></a></div>
|
|
75
75
|
<p>Personal sites for sailors and their boats with their tech projects. These are all reasonably live as of 2026.</p>
|
|
76
76
|
<ul>
|
|
77
|
+
<li id="agile4life"><a href="https://agile4life.blog/tag/technical/">Agile4Life</a> - Jeanneau Sun Odyssey 49. Spanish/French family. Boat electronics, electrics, RasPi, and generally sailing posts.</li>
|
|
77
78
|
<li id="bergie"><a href="https://bergie.iki.fi">Bergie</a> - Baltic sailor, boat projects and SignalK plugin developer (<a href="https://github.com/meri-imperiumi">meri-imperiumi</a>) and <a href="https://handbook.lille-oe.de">boat handbook with checklists</a>.</li>
|
|
78
79
|
<li id="boathackers"><a href="https://boathackers.com">BoatHackers</a> - Leopard 45, projects with Home Assistant, Starlink, NMEA2000, Victron.</li>
|
|
79
80
|
<li id="coelcanth"><a href="https://www.coelacanth.ch">coelcanth</a> - Hutting 40, Swiss owned, cruises Baltic and North Sea. Cruising blog posts, plus DIY hardware projects and beautifully produced <a href="https://www.youtube.com/@sy.coelacanth">videos</a>.</li>
|
|
@@ -88,9 +89,10 @@
|
|
|
88
89
|
<li id="project-bob"><a href="https://www.projectbob.xyz">Project Bob</a> - Autonomous boat circumnavigation project.</li>
|
|
89
90
|
<li id="seabits"><a href="https://seabits.com">Seabits</a> - Pacific North West, Kristen 50 and Symbol Pilothouse motor yachts, SignalK, dashboards, Victron.</li>
|
|
90
91
|
<li id="sy-bockra"><a href="https://corbin39.org/wp-content/uploads/2025/06/BOCKRA-nav-system-notes-Spring-2025-DS-06-06-25.pdf">SY Bockra</a> - 1981 Corbin 39, OpenCPN, Open Boat Projects, AvNav. One-off summary document of experiences.</li>
|
|
91
|
-
<li id="sv-sabado"><a href="https://svsabado.com">SV Sabado</a> - US Lagoon 42. Blog articles and videos, some Home Assistant and SignalK material.</li>
|
|
92
|
+
<li id="sv-sabado"><a href="https://svsabado.com">SV Sabado</a> - US Lagoon 42. Blog articles, technical docs and videos, some Home Assistant, ESP Home and SignalK material. Some material only for paid subscribers.</li>
|
|
92
93
|
<li id="sy-sea-jade-boatstuff"><img src="../images/icons/github.ico" width="16" height="16"> <a href="https://sy-sea-jade.github.io/boatstuff/">SY Sea Jade Boatstuff</a> - Checklists, equipment choices, passage planning templates and other tabular data.</li>
|
|
93
94
|
<li id="the-low-cost-sailor"><a href="https://www.thelowcostsailor.com">The Low Cost Sailor</a> - Boat tech news and articles. English, French, Spanish. Also <img src="../images/icons/youtube.ico" width="16" height="16"> <a href="https://www.youtube.com/@TheLowCostSailor">Spanish</a> and <img src="../images/icons/youtube.ico" width="16" height="16"> <a href="https://www.youtube.com/@lowcostsailor">English</a> YouTube channels.</li>
|
|
95
|
+
<li id="trouper"><a href="https://trouper.uk">Trouper</a> - Swan 43, English Channel. Electronics upgrades and eBay finds.</li>
|
|
94
96
|
<li id="zapped-myself"><a href="https://zappedmyself.com/projects/nmea2000/">Zapped Myself</a> - NMEA2000, AIS, ESP32 projects.</li>
|
|
95
97
|
</ul>
|
|
96
98
|
<div class="sl-heading-wrapper level-h3"><h3 id="vlogs">Vlogs</h3><a class="sl-anchor-link" href="#vlogs"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24" fill="currentColor"><path d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 1 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 0 0-1.42-1.42m8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 1 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 0 0 0 1.42 1 1 0 0 0 1.42 0l3.88-3.89a4.49 4.49 0 0 0 0-6.33M8.83 15.17a1 1 0 0 0 .71.29 1 1 0 0 0 .71-.29l4.92-4.92a1 1 0 1 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section titled “Vlogs”</span></a></div>
|
|
@@ -103,8 +105,9 @@
|
|
|
103
105
|
<li id="gary-woodruff"><img src="../images/icons/youtube.ico" width="16" height="16"> <a href="https://www.youtube.com/@garrywoodruff960">Gary Woodruff</a> - Boat projects and HowTo guides for boat electrics and electronics, focus on Lowrance equipment.</li>
|
|
104
106
|
<li id="out-chasing-stars"><img src="../images/icons/youtube.ico" width="16" height="16"> <a href="https://www.youtube.com/@OutChasingStars">Out Chasing Stars</a> - OpenCPN and general boat electrics, electronics.</li>
|
|
105
107
|
<li id="pacific-yacht-systems"><img src="../images/icons/youtube.ico" width="16" height="16"> <a href="https://www.youtube.com/@PacificYachtSystems">Pacific Yacht Systems</a> - Last active in 2023, large back catalogue of instructional videos on marine electrics, electronics and networking.</li>
|
|
106
|
-
<li id="
|
|
108
|
+
<li id="raspberry4sailing"><img src="../images/icons/youtube.ico" width="16" height="16"> <a href="https://www.youtube.com/@Sir-Real">Raspberry4Sailing</a> - OpenPlotter, SignalK, KIP projects on Raspberry Pi.</li>
|
|
107
109
|
<li id="smart-boat-innovations"><img src="../images/icons/youtube.ico" width="16" height="16"> <a href="https://www.youtube.com/@SmartBoatInnovations">Smart Boat Innovations</a> - Raspberry Pi, HomeAssistant and SignalK boat projects.</li>
|
|
110
|
+
<li id="surf-n-turf"><img src="../images/icons/youtube.ico" width="16" height="16"> <a href="https://www.youtube.com/playlist?list=PLK_IzlFMWDRA">Surf n Turf</a> - Tutorials on OpenCPN and SignalK and general boat life.</li>
|
|
108
111
|
<li id="sv-apres"><img src="../images/icons/youtube.ico" width="16" height="16"> <a href="https://www.youtube.com/playlist?list=PLqHa5JFKHBLwxeCuc6uaa5TzAXVeqTyiD">SV Apres</a> - OpenPlotter, NMEA2000 and general boat tech.</li>
|
|
109
112
|
<li id="the-florida-captain"><img src="../images/icons/youtube.ico" width="16" height="16"> <a href="https://www.youtube.com/@TheFloridaCaptain">The Florida Captain</a> - Open source boat network and apps.</li>
|
|
110
113
|
<li id="tom-seahorse"><img src="../images/icons/youtube.ico" width="16" height="16"> <a href="https://www.youtube.com/@Tom-seahorse/videos">Tom Seahorse</a> - UK. Catamaran. Raspberry Pi, OpenCPN, Home Assistant.</li>
|
|
@@ -124,4 +127,4 @@
|
|
|
124
127
|
<li id="signalk-community"><a href="https://signalk.org/community/">SignalK Community</a> - Discord and GitHub Discussions.</li>
|
|
125
128
|
<li id="signalk-google-group"><a href="https://groups.google.com/g/signalk">SignalK Google Group</a> - Active as of end 2025.</li>
|
|
126
129
|
<li id="the-hull-truth"><a href="https://www.thehulltruth.com/marine-electronics-forum-19/">The Hull Truth</a> - Marine electronics forum.</li>
|
|
127
|
-
</ul></div><footer class="sl-flex astro-
|
|
130
|
+
</ul></div><footer class="sl-flex astro-ddtxxk7k"><div class="meta sl-flex astro-ddtxxk7k"></div><div class="pagination-links print:hidden astro-b5raizh3" dir="ltr"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/" rel="prev" class="astro-b5raizh3"><svg aria-hidden="true" class="astro-b5raizh3 astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.5rem;"><path d="M17 11H9.41l3.3-3.29a1.004 1.004 0 1 0-1.42-1.42l-5 5a1 1 0 0 0-.21.33 1 1 0 0 0 0 .76 1 1 0 0 0 .21.33l5 5a1.002 1.002 0 0 0 1.639-.325 1 1 0 0 0-.219-1.095L9.41 13H17a1 1 0 0 0 0-2Z"/></svg><span class="astro-b5raizh3">Previous<br class="astro-b5raizh3"><span class="link-title astro-b5raizh3">Home</span></span></a><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/charts/" rel="next" class="astro-b5raizh3"><svg aria-hidden="true" class="astro-b5raizh3 astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.5rem;"><path d="M17.92 11.62a1.001 1.001 0 0 0-.21-.33l-5-5a1.003 1.003 0 1 0-1.42 1.42l3.3 3.29H7a1 1 0 0 0 0 2h7.59l-3.3 3.29a1.002 1.002 0 0 0 .325 1.639 1 1 0 0 0 1.095-.219l5-5a1 1 0 0 0 .21-.33 1 1 0 0 0 0-.76Z"/></svg><span class="astro-b5raizh3">Next<br class="astro-b5raizh3"><span class="link-title astro-b5raizh3">Charts and Data</span></span></a></div></footer></div></div></main></div></div></div></div></body></html>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!DOCTYPE html><html lang="en" dir="ltr" data-theme="dark" data-has-sidebar class="astro-
|
|
1
|
+
<!DOCTYPE html><html lang="en" dir="ltr" data-theme="dark" data-has-sidebar class="astro-g5ptsecz"><head><meta charset="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><title>Vendors | Boat Tech Directory</title><link rel="canonical" href="https://boat-tech-directory.rhizomatics.org.uk/@rhizomatics/signalk-boat-tech-directory-plugin/vendors/"/><link rel="sitemap" href="/@rhizomatics/signalk-boat-tech-directory-plugin/sitemap-index.xml"/><link rel="shortcut icon" href="/@rhizomatics/signalk-boat-tech-directory-plugin/favicon.svg" type="image/svg+xml"/><meta name="generator" content="Astro v7.3.2"/><meta name="generator" content="Starlight v0.42.1"/><meta property="og:title" content="Vendors"/><meta property="og:type" content="article"/><meta property="og:url" content="https://boat-tech-directory.rhizomatics.org.uk/@rhizomatics/signalk-boat-tech-directory-plugin/vendors/"/><meta property="og:locale" content="en"/><meta property="og:description" content="Hardware and software vendors, and specialist consultants."/><meta property="og:site_name" content="Boat Tech Directory"/><meta name="description" content="Hardware and software vendors, and specialist consultants."/><meta property="og:image" content="https://boat-tech-directory.rhizomatics.org.uk/images/social-preview.jpg"/><meta property="og:image:width" content="1536"/><meta property="og:image:height" content="1024"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:image" content="https://boat-tech-directory.rhizomatics.org.uk/images/social-preview.jpg"/><script>
|
|
2
2
|
window.StarlightThemeProvider = (() => {
|
|
3
3
|
const storedTheme =
|
|
4
4
|
typeof localStorage !== 'undefined' && localStorage.getItem('starlight-theme');
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
},
|
|
25
25
|
};
|
|
26
26
|
})();
|
|
27
|
-
</script><template id="theme-icons"><svg aria-hidden="true" class="light astro-
|
|
27
|
+
</script><template id="theme-icons"><svg aria-hidden="true" class="light astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M5 12a1 1 0 0 0-1-1H3a1 1 0 0 0 0 2h1a1 1 0 0 0 1-1Zm.64 5-.71.71a1 1 0 0 0 0 1.41 1 1 0 0 0 1.41 0l.71-.71A1 1 0 0 0 5.64 17ZM12 5a1 1 0 0 0 1-1V3a1 1 0 0 0-2 0v1a1 1 0 0 0 1 1Zm5.66 2.34a1 1 0 0 0 .7-.29l.71-.71a1 1 0 1 0-1.41-1.41l-.66.71a1 1 0 0 0 0 1.41 1 1 0 0 0 .66.29Zm-12-.29a1 1 0 0 0 1.41 0 1 1 0 0 0 0-1.41l-.71-.71a1.004 1.004 0 1 0-1.43 1.41l.73.71ZM21 11h-1a1 1 0 0 0 0 2h1a1 1 0 0 0 0-2Zm-2.64 6A1 1 0 0 0 17 18.36l.71.71a1 1 0 0 0 1.41 0 1 1 0 0 0 0-1.41l-.76-.66ZM12 6.5a5.5 5.5 0 1 0 5.5 5.5A5.51 5.51 0 0 0 12 6.5Zm0 9a3.5 3.5 0 1 1 0-7 3.5 3.5 0 0 1 0 7Zm0 3.5a1 1 0 0 0-1 1v1a1 1 0 0 0 2 0v-1a1 1 0 0 0-1-1Z"/></svg><svg aria-hidden="true" class="dark astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21.64 13a1 1 0 0 0-1.05-.14 8.049 8.049 0 0 1-3.37.73 8.15 8.15 0 0 1-8.14-8.1 8.59 8.59 0 0 1 .25-2A1 1 0 0 0 8 2.36a10.14 10.14 0 1 0 14 11.69 1 1 0 0 0-.36-1.05Zm-9.5 6.69A8.14 8.14 0 0 1 7.08 5.22v.27a10.15 10.15 0 0 0 10.14 10.14 9.784 9.784 0 0 0 2.1-.22 8.11 8.11 0 0 1-7.18 4.32v-.04Z"/></svg><svg aria-hidden="true" class="auto astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21 14h-1V7a3 3 0 0 0-3-3H7a3 3 0 0 0-3 3v7H3a1 1 0 0 0-1 1v2a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3v-2a1 1 0 0 0-1-1ZM6 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7H6V7Zm14 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1h16v1Z"/></svg></template><link rel="stylesheet" href="/@rhizomatics/signalk-boat-tech-directory-plugin/_astro/print.ehPL0gv-.css" media="print"><link rel="stylesheet" href="/@rhizomatics/signalk-boat-tech-directory-plugin/_astro/common.CNhHhUwb.css"><script type="module" src="/@rhizomatics/signalk-boat-tech-directory-plugin/_astro/page.LAbJoB63.js"></script></head><body class="astro-g5ptsecz"><a class="sl-skip-link astro-qb7clj6f" href="#_top">Skip to content</a><div class="page sl-flex astro-yntsjkba"><header class="header astro-yntsjkba"><div class="header astro-by6fddyj"><div class="title-wrapper sl-flex astro-by6fddyj"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/" class="site-title sl-flex astro-6rvad3va"><span class="astro-6rvad3va" translate="no">Boat Tech Directory</span></a></div><div class="sl-flex print:hidden astro-by6fddyj"><site-search class="astro-by6fddyj astro-ac66eqjo" data-translations="{"placeholder":"Search"}"><button data-open-modal disabled aria-label="Search" aria-keyshortcuts="Control+K" class="astro-ac66eqjo"><svg aria-hidden="true" class="astro-ac66eqjo astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21.71 20.29 18 16.61A9 9 0 1 0 16.61 18l3.68 3.68a.999.999 0 0 0 1.42 0 1 1 0 0 0 0-1.39ZM11 18a7 7 0 1 1 0-14 7 7 0 0 1 0 14Z"/></svg><span class="sl-hidden md:sl-block astro-ac66eqjo" aria-hidden="true">Search</span><kbd class="sl-hidden md:sl-flex astro-ac66eqjo" style="display: none;"><kbd class="astro-ac66eqjo">Ctrl</kbd><kbd class="astro-ac66eqjo">K</kbd></kbd></button><dialog style="padding:0" aria-label="Search" class="astro-ac66eqjo"><div class="dialog-frame sl-flex astro-ac66eqjo"><button data-close-modal class="sl-flex md:sl-hidden astro-ac66eqjo">Cancel</button><div class="search-container astro-ac66eqjo"><div id="starlight__search" class="astro-ac66eqjo"><form id="starlight__search-form" role="search" aria-label="Search" class="astro-ac66eqjo"><input id="starlight__search-input" type="text" autocapitalize="none" enterkeyhint="search" placeholder="Search" title="Search" class="astro-ac66eqjo"><button type="button" id="starlight__search-clear" hidden class="astro-ac66eqjo">Search</button></form><div id="starlight__search-results-area" hidden class="astro-ac66eqjo"><p id="starlight__search-message" role="status" class="astro-ac66eqjo"></p><ol id="starlight__search-results" class="astro-ac66eqjo"></ol></div></div></div></div></dialog></site-search><script>
|
|
28
28
|
(() => {
|
|
29
29
|
const openBtn = document.querySelector('button[data-open-modal]');
|
|
30
30
|
const shortcut = openBtn?.querySelector('kbd');
|
|
@@ -36,9 +36,9 @@
|
|
|
36
36
|
}
|
|
37
37
|
shortcut.style.display = '';
|
|
38
38
|
})();
|
|
39
|
-
</script><script type="module" src="/@rhizomatics/signalk-boat-tech-directory-plugin/_astro/Search.astro_astro_type_script_index_0_lang.3ca-UBSH.js"></script></div><div class="sl-hidden md:sl-flex print:hidden right-group astro-
|
|
39
|
+
</script><script type="module" src="/@rhizomatics/signalk-boat-tech-directory-plugin/_astro/Search.astro_astro_type_script_index_0_lang.3ca-UBSH.js"></script></div><div class="sl-hidden md:sl-flex print:hidden right-group astro-by6fddyj"><div class="sl-flex social-icons astro-by6fddyj"><a href="https://github.com/rhizomatics/boat-tech-directory" rel="me" class="sl-flex astro-n2mnl6yq"><span class="sr-only astro-n2mnl6yq">GitHub</span><svg aria-hidden="true" class="astro-n2mnl6yq astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M12 .3a12 12 0 0 0-3.8 23.38c.6.12.83-.26.83-.57L9 21.07c-3.34.72-4.04-1.61-4.04-1.61-.55-1.39-1.34-1.76-1.34-1.76-1.08-.74.09-.73.09-.73 1.2.09 1.83 1.24 1.83 1.24 1.08 1.83 2.81 1.3 3.5 1 .1-.78.42-1.31.76-1.61-2.67-.3-5.47-1.33-5.47-5.93 0-1.31.47-2.38 1.24-3.22-.14-.3-.54-1.52.1-3.18 0 0 1-.32 3.3 1.23a11.5 11.5 0 0 1 6 0c2.28-1.55 3.29-1.23 3.29-1.23.64 1.66.24 2.88.12 3.18a4.65 4.65 0 0 1 1.23 3.22c0 4.61-2.8 5.63-5.48 5.92.42.36.81 1.1.81 2.22l-.01 3.29c0 .31.2.69.82.57A12 12 0 0 0 12 .3Z"/></svg></a></div><starlight-theme-select><label style="--sl-select-width: 6.25em" class="astro-2z5xp7gb"><span class="sr-only astro-2z5xp7gb">Select theme</span><svg aria-hidden="true" class="icon label-icon astro-2z5xp7gb astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21 14h-1V7a3 3 0 0 0-3-3H7a3 3 0 0 0-3 3v7H3a1 1 0 0 0-1 1v2a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3v-2a1 1 0 0 0-1-1ZM6 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7H6V7Zm14 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1h16v1Z"/></svg><select autocomplete="off" class="astro-2z5xp7gb"><option value="dark" class="astro-2z5xp7gb">Dark</option><option value="light" class="astro-2z5xp7gb">Light</option><option value="auto" selected class="astro-2z5xp7gb">Auto</option></select><svg aria-hidden="true" class="icon caret astro-2z5xp7gb astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M17 9.17a1 1 0 0 0-1.41 0L12 12.71 8.46 9.17a1 1 0 1 0-1.41 1.42l4.24 4.24a1.002 1.002 0 0 0 1.42 0L17 10.59a1.002 1.002 0 0 0 0-1.42Z"/></svg></label></starlight-theme-select><script>
|
|
40
40
|
StarlightThemeProvider.updatePickers();
|
|
41
|
-
</script><script type="module">var e=`starlight-theme`,t=e=>e===`auto`||e===`dark`||e===`light`?e:`auto`,n=()=>t(typeof localStorage<`u`&&localStorage.getItem(e));function r(t){typeof localStorage<`u`&&localStorage.setItem(e,t===`light`||t===`dark`?t:``)}var i=()=>matchMedia(`(prefers-color-scheme: light)`).matches?`light`:`dark`;function a(e){StarlightThemeProvider.updatePickers(e),document.documentElement.dataset.theme=e===`auto`?i():e,r(e)}matchMedia(`(prefers-color-scheme: light)`).addEventListener(`change`,()=>{n()===`auto`&&a(`auto`)});var o=class extends HTMLElement{constructor(){super(),a(n()),this.querySelector(`select`)?.addEventListener(`change`,e=>{e.currentTarget instanceof HTMLSelectElement&&a(t(e.currentTarget.value))})}};customElements.define(`starlight-theme-select`,o);</script><script type="module">var e=class extends HTMLElement{constructor(){super();let e=this.querySelector(`select`);e&&(e.addEventListener(`change`,e=>{e.currentTarget instanceof HTMLSelectElement&&(window.location.pathname=e.currentTarget.value)}),window.addEventListener(`pageshow`,t=>{if(!t.persisted)return;let n=e.querySelector(`option[selected]`)?.index;n!==e.selectedIndex&&(e.selectedIndex=n??0)}))}};customElements.define(`starlight-lang-select`,e);</script></div></div></header><nav class="sidebar print:hidden astro-
|
|
41
|
+
</script><script type="module">var e=`starlight-theme`,t=e=>e===`auto`||e===`dark`||e===`light`?e:`auto`,n=()=>t(typeof localStorage<`u`&&localStorage.getItem(e));function r(t){typeof localStorage<`u`&&localStorage.setItem(e,t===`light`||t===`dark`?t:``)}var i=()=>matchMedia(`(prefers-color-scheme: light)`).matches?`light`:`dark`;function a(e){StarlightThemeProvider.updatePickers(e),document.documentElement.dataset.theme=e===`auto`?i():e,r(e)}matchMedia(`(prefers-color-scheme: light)`).addEventListener(`change`,()=>{n()===`auto`&&a(`auto`)});var o=class extends HTMLElement{constructor(){super(),a(n()),this.querySelector(`select`)?.addEventListener(`change`,e=>{e.currentTarget instanceof HTMLSelectElement&&a(t(e.currentTarget.value))})}};customElements.define(`starlight-theme-select`,o);</script><script type="module">var e=class extends HTMLElement{constructor(){super();let e=this.querySelector(`select`);e&&(e.addEventListener(`change`,e=>{e.currentTarget instanceof HTMLSelectElement&&(window.location.pathname=e.currentTarget.value)}),window.addEventListener(`pageshow`,t=>{if(!t.persisted)return;let n=e.querySelector(`option[selected]`)?.index;n!==e.selectedIndex&&(e.selectedIndex=n??0)}))}};customElements.define(`starlight-lang-select`,e);</script></div></div></header><nav class="sidebar print:hidden astro-yntsjkba" aria-label="Main"><button popovertarget="starlight__sidebar" class="sl-menu-button sl-flex md:sl-hidden print:hidden astro-r2osgdlg"><svg aria-hidden="true" class="open-menu astro-r2osgdlg astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M3 8h18a1 1 0 1 0 0-2H3a1 1 0 0 0 0 2Zm18 8H3a1 1 0 0 0 0 2h18a1 1 0 0 0 0-2Zm0-5H3a1 1 0 0 0 0 2h18a1 1 0 0 0 0-2Z"/></svg><svg aria-hidden="true" class="close-menu astro-r2osgdlg astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="m13.41 12 6.3-6.29a1.004 1.004 0 1 0-1.42-1.42L12 10.59l-6.29-6.3a1.004 1.004 0 0 0-1.42 1.42l6.3 6.29-6.3 6.29a1 1 0 0 0 0 1.42.998.998 0 0 0 1.42 0l6.29-6.3 6.29 6.3a.999.999 0 0 0 1.42 0 1 1 0 0 0 0-1.42L13.41 12Z"/></svg><span class="sr-only astro-r2osgdlg">Menu</span></button><script type="module">var e=class extends HTMLElement{constructor(){super();let e=matchMedia(`(min-width: 50em)`),t=()=>{this.popover=e.matches?null:`auto`};t(),e.addEventListener(`change`,()=>t()),this.addEventListener(`toggle`,({newState:e})=>this.trapFocus(e===`open`))}trapFocus(e){document.querySelectorAll(`.main-frame, .sl-skip-link`).forEach(t=>{t.toggleAttribute(`inert`,e)})}};customElements.define(`sl-sidebar-pane`,e);</script><sl-sidebar-pane popover id="starlight__sidebar" class="sidebar-pane astro-yntsjkba"><div class="sidebar-content sl-flex astro-yntsjkba"><sl-sidebar-state-persist data-hash="0920a4u" class="astro-ipdry5cl"><script aria-hidden="true">
|
|
42
42
|
(() => {
|
|
43
43
|
try {
|
|
44
44
|
if (!matchMedia('(min-width: 50em)').matches) return;
|
|
@@ -61,16 +61,16 @@
|
|
|
61
61
|
);
|
|
62
62
|
} catch {}
|
|
63
63
|
})();
|
|
64
|
-
</script><ul class="top-level astro-wv7whodv"><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Home</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/social/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Social</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/charts/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Charts and Data</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/open-source-projects/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Open Source Projects</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/protocols/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Protocols</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/vendors/" aria-current="page" class="large astro-wv7whodv"><span class="astro-wv7whodv">Vendors</span></a><ul class="page-toc astro-wv7whodv"><li class="
|
|
64
|
+
</script><ul class="top-level astro-wv7whodv"><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Home</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/social/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Social</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/charts/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Charts and Data</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/open-source-projects/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Open Source Projects</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/protocols/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Protocols</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/vendors/" aria-current="page" class="large astro-wv7whodv"><span class="astro-wv7whodv">Vendors</span></a><ul class="page-toc astro-wv7whodv"><li class="astro-wv7whodv"><a href="#hardware" class="astro-wv7whodv">Hardware</a><ul class="page-toc-sub astro-wv7whodv"><li class="astro-wv7whodv"><a href="#full-integration" class="astro-wv7whodv">Full Integration</a></li><li class="astro-wv7whodv"><a href="#nmea-interfacing" class="astro-wv7whodv">NMEA Interfacing</a></li><li class="astro-wv7whodv"><a href="#marine-pcs-and-components" class="astro-wv7whodv">Marine PCs and Components</a></li><li class="astro-wv7whodv"><a href="#instruments-and-autopilots" class="astro-wv7whodv">Instruments and Autopilots</a></li><li class="astro-wv7whodv"><a href="#boat-integration-and-remote-monitoring" class="astro-wv7whodv">Boat Integration and Remote Monitoring</a></li><li class="astro-wv7whodv"><a href="#audio-electrical-safety-accessories" class="astro-wv7whodv">Audio, Electrical, Safety, Accessories</a></li></ul></li><li class="astro-wv7whodv"><a href="#software" class="astro-wv7whodv">Software</a><ul class="page-toc-sub astro-wv7whodv"><li class="astro-wv7whodv"><a href="#social" class="astro-wv7whodv">Social</a></li></ul></li><li class="astro-wv7whodv"><a href="#consultants" class="astro-wv7whodv">Consultants</a></li></ul></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/news/" class="large astro-wv7whodv"><span class="astro-wv7whodv">News</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/education/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Education</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/servicing/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Servicing and Spares</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/checklists/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Checklists</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/reference/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Reference</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/index-of-terms/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Index</span></a></li><li class="astro-wv7whodv"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/contributing/" class="large astro-wv7whodv"><span class="astro-wv7whodv">Contributing</span></a></li></ul><script aria-hidden="true">
|
|
65
65
|
(() => {
|
|
66
66
|
const scroller = document.getElementById('starlight__sidebar');
|
|
67
67
|
if (!window._starlightScrollRestore || !scroller) return;
|
|
68
68
|
scroller.scrollTop = window._starlightScrollRestore;
|
|
69
69
|
delete window._starlightScrollRestore;
|
|
70
70
|
})();
|
|
71
|
-
</script></sl-sidebar-state-persist><div class="md:sl-hidden astro-wv7whodv"><div class="mobile-preferences sl-flex astro-
|
|
71
|
+
</script></sl-sidebar-state-persist><div class="md:sl-hidden astro-wv7whodv"><div class="mobile-preferences sl-flex astro-p4azlveh"><div class="social-icons astro-p4azlveh"><a href="https://github.com/rhizomatics/boat-tech-directory" rel="me" class="sl-flex astro-n2mnl6yq"><span class="sr-only astro-n2mnl6yq">GitHub</span><svg aria-hidden="true" class="astro-n2mnl6yq astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M12 .3a12 12 0 0 0-3.8 23.38c.6.12.83-.26.83-.57L9 21.07c-3.34.72-4.04-1.61-4.04-1.61-.55-1.39-1.34-1.76-1.34-1.76-1.08-.74.09-.73.09-.73 1.2.09 1.83 1.24 1.83 1.24 1.08 1.83 2.81 1.3 3.5 1 .1-.78.42-1.31.76-1.61-2.67-.3-5.47-1.33-5.47-5.93 0-1.31.47-2.38 1.24-3.22-.14-.3-.54-1.52.1-3.18 0 0 1-.32 3.3 1.23a11.5 11.5 0 0 1 6 0c2.28-1.55 3.29-1.23 3.29-1.23.64 1.66.24 2.88.12 3.18a4.65 4.65 0 0 1 1.23 3.22c0 4.61-2.8 5.63-5.48 5.92.42.36.81 1.1.81 2.22l-.01 3.29c0 .31.2.69.82.57A12 12 0 0 0 12 .3Z"/></svg></a></div><starlight-theme-select><label style="--sl-select-width: 6.25em" class="astro-2z5xp7gb"><span class="sr-only astro-2z5xp7gb">Select theme</span><svg aria-hidden="true" class="icon label-icon astro-2z5xp7gb astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M21 14h-1V7a3 3 0 0 0-3-3H7a3 3 0 0 0-3 3v7H3a1 1 0 0 0-1 1v2a3 3 0 0 0 3 3h14a3 3 0 0 0 3-3v-2a1 1 0 0 0-1-1ZM6 7a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v7H6V7Zm14 10a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-1h16v1Z"/></svg><select autocomplete="off" class="astro-2z5xp7gb"><option value="dark" class="astro-2z5xp7gb">Dark</option><option value="light" class="astro-2z5xp7gb">Light</option><option value="auto" selected class="astro-2z5xp7gb">Auto</option></select><svg aria-hidden="true" class="icon caret astro-2z5xp7gb astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1em;"><path d="M17 9.17a1 1 0 0 0-1.41 0L12 12.71 8.46 9.17a1 1 0 1 0-1.41 1.42l4.24 4.24a1.002 1.002 0 0 0 1.42 0L17 10.59a1.002 1.002 0 0 0 0-1.42Z"/></svg></label></starlight-theme-select><script>
|
|
72
72
|
StarlightThemeProvider.updatePickers();
|
|
73
|
-
</script></div></div></div></
|
|
73
|
+
</script></div></div></div></sl-sidebar-pane></nav><div class="main-frame astro-yntsjkba"><script type="module">var e=document.getElementById(`starlight__sidebar`),t=e?.querySelector(`sl-sidebar-state-persist`),n=`sl-sidebar-state`,r=()=>{let r=[],i=t?.dataset.hash||``;try{let e=sessionStorage.getItem(n),t=JSON.parse(e||`{}`);Array.isArray(t.open)&&t.hash===i&&(r=t.open)}catch{}return{hash:i,open:r,scroll:e?.scrollTop||0}},i=e=>{try{sessionStorage.setItem(n,JSON.stringify(e))}catch{}},a=()=>i(r()),o=(e,t)=>{let n=r();n.open[t]=e,i(n)};t?.addEventListener(`click`,e=>{if(!(e.target instanceof Element))return;let t=e.target.closest(`summary`)?.closest(`details`);if(!t)return;let n=t.querySelector(`sl-sidebar-restore`),r=parseInt(n?.dataset.index||``);isNaN(r)||o(!t.open,r)}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&a()});</script><div class="lg:sl-flex astro-lrzkfocr"><div class="main-pane astro-lrzkfocr"><main data-pagefind-body class="astro-g5ptsecz" lang="en" dir="ltr"><div class="content-panel astro-a7po4psb"><div class="sl-container astro-a7po4psb"><h1 id="_top" class="astro-bebwqqxs">Vendors</h1></div></div><div class="content-panel astro-a7po4psb"><div class="sl-container astro-a7po4psb"><div class="sl-markdown-content"><!-- Generated from ../../../../README.md by scripts/sync-readme.mjs — do not edit directly. -->
|
|
74
74
|
<div class="sl-heading-wrapper level-h3"><h3 id="hardware">Hardware</h3><a class="sl-anchor-link" href="#hardware"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24" fill="currentColor"><path d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 1 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 0 0-1.42-1.42m8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 1 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 0 0 0 1.42 1 1 0 0 0 1.42 0l3.88-3.89a4.49 4.49 0 0 0 0-6.33M8.83 15.17a1 1 0 0 0 .71.29 1 1 0 0 0 .71-.29l4.92-4.92a1 1 0 1 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section titled “Hardware”</span></a></div>
|
|
75
75
|
<div class="sl-heading-wrapper level-h4"><h4 id="full-integration">Full Integration</h4><a class="sl-anchor-link" href="#full-integration"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24" fill="currentColor"><path d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 1 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 0 0-1.42-1.42m8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 1 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 0 0 0 1.42 1 1 0 0 0 1.42 0l3.88-3.89a4.49 4.49 0 0 0 0-6.33M8.83 15.17a1 1 0 0 0 .71.29 1 1 0 0 0 .71-.29l4.92-4.92a1 1 0 1 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section titled “Full Integration”</span></a></div>
|
|
76
76
|
<p>Vendors offering full suite of products for modern boats, including plotters, instruments and sensors.</p>
|
|
@@ -96,7 +96,7 @@
|
|
|
96
96
|
<li id="digital-yacht"><a href="https://digitalyacht.co.uk">Digital Yacht</a> - NMEA multiplexers, sensors, gateways plus AIS and 4G/5G.</li>
|
|
97
97
|
<li id="gadget-pool"><a href="http://www.gadgetpool.de">Gadget Pool</a> - German vendor, with English info, of NMEA and Seatalk interfaces and displays.</li>
|
|
98
98
|
<li id="gedad"><a href="https://www.gedad.de">gedad</a> - German vendor, <em>Marine Control Server</em> for NMEA0183, NMEA2000 and i2c, with SignalK support.</li>
|
|
99
|
-
<li id="hat-labs"><a href="https://hatlabs.fi">HAT Labs</a> - Open Source NMEA2000, ESP32 and RasPi hardware, including the <a href="https://github.com/halos-org/halos">Halos</a> containerized marine OS for Raspberry Pi.</li>
|
|
99
|
+
<li id="hat-labs"><a href="https://hatlabs.fi">HAT Labs</a> - Open Source NMEA2000, ESP32 and RasPi hardware, including the <a href="https://github.com/halos-org/halos">Halos</a> containerized marine OS for Raspberry Pi and <a href="https://shop.hatlabs.fi/products/halpi2-computer">HALPI2</a> marinized Raspberry Pi.</li>
|
|
100
100
|
<li id="luissa-351"><a href="https://www.ebay.co.uk/usr/luissa.351">Luissa 351</a> - NMEA gateways, multiplexers and Wifi integration. Portugal selling internationally through eBay.</li>
|
|
101
101
|
<li id="marine-control-server"><a href="https://open-boat-projects.org/en/marine-control-server/">Marine Control Server</a> - Raspberry Pi based NMEA 0183 and NMEA 2000 interface with OpenPlotter and SignalK integration.</li>
|
|
102
102
|
<li id="matsutec"><a href="http://www.matsutec.cn">Matsutec</a> - Chinese supplier of NMEA hardware, testers, gateways plus AIS and auto-pilots.</li>
|
|
@@ -133,6 +133,7 @@
|
|
|
133
133
|
</ul>
|
|
134
134
|
<div class="sl-heading-wrapper level-h4"><h4 id="instruments-and-autopilots">Instruments and Autopilots</h4><a class="sl-anchor-link" href="#instruments-and-autopilots"><span aria-hidden="true" class="sl-anchor-icon"><svg width="16" height="16" viewBox="0 0 24 24" fill="currentColor"><path d="m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 1 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 0 0-1.42-1.42m8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 1 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 0 0 0 1.42 1 1 0 0 0 1.42 0l3.88-3.89a4.49 4.49 0 0 0 0-6.33M8.83 15.17a1 1 0 0 0 .71.29 1 1 0 0 0 .71-.29l4.92-4.92a1 1 0 1 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42"></path></svg></span><span class="sr-only" data-pagefind-ignore="">Section titled “Instruments and Autopilots”</span></a></div>
|
|
135
135
|
<ul>
|
|
136
|
+
<li id="at"><a href="https://www.aandtinstruments.com">A+T</a> - Wind sensors, <em>Sailing Processor</em> boat server, displays, valves. South coast of England based. Repairs, and integration for superyachts and racing boats.</li>
|
|
136
137
|
<li id="airmar"><a href="https://www.airmar.com/">Airmar</a> - Transducers, sensors, NMEA bridging, weather instruments and apps.</li>
|
|
137
138
|
<li id="cyclops-marine"><a href="https://www.cyclopsmarine.com">Cyclops Marine</a> - Smart load sensors and displays.</li>
|
|
138
139
|
<li id="daniamant"><a href="https://daniamant.com">Daniamant</a> - Forward looking sonar (previously <em>EchoPilot</em>), alarms and other safety related products.</li>
|
|
@@ -141,6 +142,7 @@
|
|
|
141
142
|
<li id="lcj-capteurs"><a href="https://lcjcapteurs.com/en/categorie-girouette-anemometres-capteur-vent/marine-en/">LCJ Capteurs</a> - Wind and weather instruments, StatMETEO wind data recording software.</li>
|
|
142
143
|
<li id="maptattoo"><a href="https://www.maptattoo.com">MAPTATTOO</a> - eInk chart plotter.</li>
|
|
143
144
|
<li id="nasa-marine"><a href="https://www.nasamarine.com">NASA Marine</a> - Instruments, monitors, AIS, displays.</li>
|
|
145
|
+
<li id="nauticsense"><a href="https://nautic-sense.com">Nauticsense</a> - ESP32 based deck instruments with NMEA 2000, SignalK and BLE integration.</li>
|
|
144
146
|
<li id="nautinect"><a href="https://nautinect.com">Nautinect</a> - Open source hardware design and mobile app, controller with wheel or tiller drive.</li>
|
|
145
147
|
<li id="navinet"><a href="https://www.navinet-autopilot.com/">Navinet</a> - SmartSail autopilot with OpenCPN and NMEA integration.</li>
|
|
146
148
|
<li id="pcnautic"><a href="https://pcnautic.com">PCNautic</a> - Tiller auto-pilot with mobile apps, plus BoatController NMEA and Wifi interfacing and related instruments.</li>
|
|
@@ -154,6 +156,7 @@
|
|
|
154
156
|
<ul>
|
|
155
157
|
<li id="boatmonitor32"><a href="https://www.boatmonitor32.co.uk">BoatMonitor32</a> - Mobile app and boat hardware hub with Victron integration.</li>
|
|
156
158
|
<li id="easyhub"><a href="https://dpnav.de/">EasyHub</a> - German vendor (DPNav) WiFi gateway with NMEA2000 integration and remote tracking, with cloud service.</li>
|
|
159
|
+
<li id="galvanic-works"><a href="https://galvanicworks.com">Galvanic Works</a> - Voice alert devices, crew pulse wristbands, mobile app for MOB, AIS collisions, anchor alarm, watch management, remote monitoring. Sailer owned company in Balearics, with English/French/Spanish/Italian/German language on-line shop.</li>
|
|
157
160
|
<li id="hello-sailor"><a href="https://hello-sailor.co.uk">Hello Sailor</a> - LTE/SMS based remote boat monitoring, subscription-free.</li>
|
|
158
161
|
<li id="inav4u"><a href="https://www.inav4u.com">iNav4u</a> - <strong>Zora</strong> integrated monitoring, navigation, dashboards.</li>
|
|
159
162
|
<li id="maretron"><a href="https://www.maretron.com">Maretron</a> - Integrated monitoring and visualization, NMEA bridges and sensors.</li>
|
|
@@ -226,6 +229,7 @@
|
|
|
226
229
|
<li id="skippo"><a href="https://www.skippo.se">Skippo</a> - Swedish navigation app for iOS, Android and web.</li>
|
|
227
230
|
<li id="the-boat-app"><a href="https://theboatapp.com">The Boat App</a> - Boat management app, web, iOS and Android.</li>
|
|
228
231
|
<li id="timezero"><a href="https://mytimezero.com">TimeZero</a> - Software based full-featured chart plotter.</li>
|
|
232
|
+
<li id="tremate"><a href="https://tremate.com">Tremate</a> - Inventory and maintenance records. Mobile app for iOS and Android.</li>
|
|
229
233
|
<li id="vessel-vault"><a href="https://vesselvault.app">Vessel Vault</a> - Boat maintenance management.</li>
|
|
230
234
|
<li id="wilhemsk"><a href="https://www.wilhelmsk.com">WilhemSK</a> - SignalK dashboard app for iPhone, iPad, macOS, Apple Watch and Apple TV.</li>
|
|
231
235
|
<li id="yachtara"><a href="https://yachtara.com">Yachtara</a> - Weather routing and boat management app for cruising sailors: multi-model weather comparison, weather routing, anchor watch, maintenance logs and manuals, crew management. Builds offline regional forecast packs.</li>
|
|
@@ -245,4 +249,5 @@
|
|
|
245
249
|
<li id="pacific-yacht-systems"><a href="https://www.pysystems.com">Pacific Yacht Systems</a> - Electrical and electronics consultancy, retail and educational articles & videos.</li>
|
|
246
250
|
<li id="seatech-systems"><a href="https://seatech.systems">Seatech Systems</a> - Marine electronics consultancy, with free advice articles on marine internet.</li>
|
|
247
251
|
<li id="tweeds-marine"><a href="https://tweedsmarine.nz/">Tweeds Marine</a> - New Zealand. Consultancy plus free articles, news and calculators online.</li>
|
|
248
|
-
|
|
252
|
+
<li id="vesselsense"><a href="https://vesselsense.io">VesselSense</a> - California. Consultancy for navigation and monitoring systems integration, plus <a href="https://www.youtube.com/@VesselSense-io">YouTube videos</a> on SignalK, Raspi, WaveShare.</li>
|
|
253
|
+
</ul></div><footer class="sl-flex astro-ddtxxk7k"><div class="meta sl-flex astro-ddtxxk7k"></div><div class="pagination-links print:hidden astro-b5raizh3" dir="ltr"><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/protocols/" rel="prev" class="astro-b5raizh3"><svg aria-hidden="true" class="astro-b5raizh3 astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.5rem;"><path d="M17 11H9.41l3.3-3.29a1.004 1.004 0 1 0-1.42-1.42l-5 5a1 1 0 0 0-.21.33 1 1 0 0 0 0 .76 1 1 0 0 0 .21.33l5 5a1.002 1.002 0 0 0 1.639-.325 1 1 0 0 0-.219-1.095L9.41 13H17a1 1 0 0 0 0-2Z"/></svg><span class="astro-b5raizh3">Previous<br class="astro-b5raizh3"><span class="link-title astro-b5raizh3">Protocols</span></span></a><a href="/@rhizomatics/signalk-boat-tech-directory-plugin/news/" rel="next" class="astro-b5raizh3"><svg aria-hidden="true" class="astro-b5raizh3 astro-hkc32dio" width="16" height="16" viewBox="0 0 24 24" fill="currentColor" style="--sl-icon-size: 1.5rem;"><path d="M17.92 11.62a1.001 1.001 0 0 0-.21-.33l-5-5a1.003 1.003 0 1 0-1.42 1.42l3.3 3.29H7a1 1 0 0 0 0 2h7.59l-3.3 3.29a1.002 1.002 0 0 0 .325 1.639 1 1 0 0 0 1.095-.219l5-5a1 1 0 0 0 .21-.33 1 1 0 0 0 0-.76Z"/></svg><span class="astro-b5raizh3">Next<br class="astro-b5raizh3"><span class="link-title astro-b5raizh3">News</span></span></a></div></footer></div></div></main></div></div></div></div></body></html>
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
@layer starlight.base{:root,::backdrop{--sl-color-white:#fff;--sl-color-gray-1:#edeef3;--sl-color-gray-2:#c1c3c8;--sl-color-gray-3:#888c96;--sl-color-gray-4:#555962;--sl-color-gray-5:#353841;--sl-color-gray-6:#23262f;--sl-color-black:#17181c;--sl-hue-orange:41;--sl-color-orange-low:hsl(var(--sl-hue-orange), 39%, 22%);--sl-color-orange:hsl(var(--sl-hue-orange), 82%, 63%);--sl-color-orange-high:hsl(var(--sl-hue-orange), 82%, 87%);--sl-hue-green:101;--sl-color-green-low:hsl(var(--sl-hue-green), 39%, 22%);--sl-color-green:hsl(var(--sl-hue-green), 82%, 63%);--sl-color-green-high:hsl(var(--sl-hue-green), 82%, 80%);--sl-hue-blue:234;--sl-color-blue-low:hsl(var(--sl-hue-blue), 54%, 20%);--sl-color-blue:hsl(var(--sl-hue-blue), 100%, 60%);--sl-color-blue-high:hsl(var(--sl-hue-blue), 100%, 87%);--sl-hue-purple:281;--sl-color-purple-low:hsl(var(--sl-hue-purple), 39%, 22%);--sl-color-purple:hsl(var(--sl-hue-purple), 82%, 63%);--sl-color-purple-high:hsl(var(--sl-hue-purple), 82%, 89%);--sl-hue-red:339;--sl-color-red-low:hsl(var(--sl-hue-red), 39%, 22%);--sl-color-red:hsl(var(--sl-hue-red), 82%, 63%);--sl-color-red-high:hsl(var(--sl-hue-red), 82%, 87%);--sl-color-accent-low:#17264f;--sl-color-accent:#3369ff;--sl-color-accent-high:#b3c7ff;--sl-color-text:var(--sl-color-gray-2);--sl-color-text-accent:var(--sl-color-accent-high);--sl-color-text-invert:var(--sl-color-accent-low);--sl-color-bg:var(--sl-color-black);--sl-color-bg-nav:var(--sl-color-gray-6);--sl-color-bg-sidebar:var(--sl-color-gray-6);--sl-color-bg-inline-code:var(--sl-color-gray-5);--sl-color-bg-accent:var(--sl-color-accent-high);--sl-color-hairline-light:var(--sl-color-gray-5);--sl-color-hairline:var(--sl-color-gray-6);--sl-color-hairline-shade:var(--sl-color-black);--sl-color-backdrop-overlay:#16181da8;--sl-shadow-sm:0px 1px 1px #0000001f, 0px 2px 1px #0000003d;--sl-shadow-md:0px 8px 4px #00000014, 0px 5px 2px #00000014, 0px 3px 2px #0000001f, 0px 1px 1px #00000026;--sl-shadow-lg:0px 25px 7px #00000008, 0px 16px 6px #0000001a, 0px 9px 5px #16181d54, 0px 4px 4px #000000bf, 0px 4px 2px #00000040;--sl-text-2xs:.75rem;--sl-text-xs:.8125rem;--sl-text-sm:.875rem;--sl-text-base:1rem;--sl-text-lg:1.125rem;--sl-text-xl:1.25rem;--sl-text-2xl:1.5rem;--sl-text-3xl:1.8125rem;--sl-text-4xl:2.1875rem;--sl-text-5xl:2.625rem;--sl-text-6xl:4rem;--sl-text-body:var(--sl-text-base);--sl-text-body-sm:var(--sl-text-xs);--sl-text-code:var(--sl-text-sm);--sl-text-code-sm:var(--sl-text-xs);--sl-text-h1:var(--sl-text-4xl);--sl-text-h2:var(--sl-text-3xl);--sl-text-h3:var(--sl-text-2xl);--sl-text-h4:var(--sl-text-xl);--sl-text-h5:var(--sl-text-lg);--sl-line-height:1.75;--sl-line-height-headings:1.2;--sl-font-system:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--sl-font-system-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--__sl-font:var(--sl-font,var(--sl-font-system)), var(--sl-font-system);--__sl-font-mono:var(--sl-font-mono,var(--sl-font-system-mono)), var(--sl-font-system-mono);--sl-nav-height:3.5rem;--sl-nav-pad-x:1rem;--sl-nav-pad-y:.75rem;--sl-mobile-toc-height:3rem;--sl-sidebar-width:18.75rem;--sl-sidebar-pad-x:1rem;--sl-content-width:45rem;--sl-content-pad-x:1rem;--sl-content-gap-y:1rem;--sl-main-pad:0 0 3vh 0;--sl-menu-button-size:2rem;--sl-nav-gap:var(--sl-content-pad-x);--sl-outline-offset-inside:-.1875rem;--sl-z-index-toc:4;--sl-z-index-menu:5;--sl-z-index-navbar:10;--sl-z-index-skiplink:20}:root[data-theme=light],[data-theme=light] ::backdrop{--sl-color-white:#17181c;--sl-color-gray-1:#23262f;--sl-color-gray-2:#353841;--sl-color-gray-3:#555962;--sl-color-gray-4:#888c96;--sl-color-gray-5:#c1c3c8;--sl-color-gray-6:#edeef3;--sl-color-gray-7:#f6f7f9;--sl-color-black:#fff;--sl-color-orange-high:hsl(var(--sl-hue-orange), 80%, 25%);--sl-color-orange:hsl(var(--sl-hue-orange), 90%, 60%);--sl-color-orange-low:hsl(var(--sl-hue-orange), 90%, 88%);--sl-color-green-high:hsl(var(--sl-hue-green), 80%, 22%);--sl-color-green:hsl(var(--sl-hue-green), 90%, 46%);--sl-color-green-low:hsl(var(--sl-hue-green), 85%, 90%);--sl-color-blue-high:hsl(var(--sl-hue-blue), 80%, 30%);--sl-color-blue:hsl(var(--sl-hue-blue), 90%, 60%);--sl-color-blue-low:hsl(var(--sl-hue-blue), 88%, 90%);--sl-color-purple-high:hsl(var(--sl-hue-purple), 90%, 30%);--sl-color-purple:hsl(var(--sl-hue-purple), 90%, 60%);--sl-color-purple-low:hsl(var(--sl-hue-purple), 80%, 90%);--sl-color-red-high:hsl(var(--sl-hue-red), 80%, 30%);--sl-color-red:hsl(var(--sl-hue-red), 90%, 60%);--sl-color-red-low:hsl(var(--sl-hue-red), 80%, 90%);--sl-color-accent-high:#0f1c8a;--sl-color-accent:#3d50f5;--sl-color-accent-low:#cfd4fc;--sl-color-text-accent:var(--sl-color-accent);--sl-color-text-invert:var(--sl-color-black);--sl-color-bg-nav:var(--sl-color-gray-7);--sl-color-bg-sidebar:var(--sl-color-bg);--sl-color-bg-inline-code:var(--sl-color-gray-6);--sl-color-bg-accent:var(--sl-color-accent);--sl-color-hairline-light:var(--sl-color-gray-6);--sl-color-hairline-shade:var(--sl-color-gray-6);--sl-color-backdrop-overlay:#545864a8;--sl-shadow-sm:0px 1px 1px #0000000f, 0px 2px 1px #0000000f;--sl-shadow-md:0px 8px 4px #00000008, 0px 5px 2px #00000008, 0px 3px 2px #0000000f, 0px 1px 1px #0000000f;--sl-shadow-lg:0px 25px 7px #00000003, 0px 16px 6px #00000008, 0px 9px 5px #16181d14, 0px 4px 4px #00000029, 0px 4px 2px #0000000a}@media (width>=50em){:root{--sl-nav-height:4rem;--sl-nav-pad-x:1.5rem;--sl-text-h1:var(--sl-text-5xl);--sl-text-h2:var(--sl-text-4xl);--sl-text-h3:var(--sl-text-3xl);--sl-text-h4:var(--sl-text-2xl)}}@media (width>=72rem){:root{--sl-content-pad-x:1.5rem;--sl-mobile-toc-height:0rem}}}@layer starlight.reset{*,:before,:after{box-sizing:border-box}*{margin:0}html{color-scheme:dark;accent-color:var(--sl-color-accent);text-size-adjust:100%}html[data-theme=light]{color-scheme:light}body{font-family:var(--__sl-font);line-height:var(--sl-line-height);-webkit-font-smoothing:antialiased;color:var(--sl-color-text);background-color:var(--sl-color-bg)}[lang]:where(:lang(zh),:lang(ja)){text-autospace:normal}[lang]:where(:not(:lang(zh),:lang(ja))){text-autospace:initial}pre,code,samp,kbd{text-autospace:no-autospace}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6,code{overflow-wrap:break-word}code{font-family:var(--__sl-font-mono)}}@layer starlight.core{.sl-banner:where(.astro-y5d7njgm){--__sl-banner-text:var(--sl-color-banner-text,var(--sl-color-text-invert));padding:var(--sl-nav-pad-y) var(--sl-nav-pad-x);background-color:var(--sl-color-banner-bg,var(--sl-color-bg-accent));color:var(--__sl-banner-text);line-height:var(--sl-line-height-headings);text-align:center;text-wrap:balance;box-shadow:var(--sl-shadow-sm)}.sl-banner:where(.astro-y5d7njgm) a{color:var(--__sl-banner-text)}.content-panel:where(.astro-oil7k7jf){padding:1.5rem var(--sl-content-pad-x)}.content-panel:where(.astro-oil7k7jf)+.content-panel:where(.astro-oil7k7jf){border-top:1px solid var(--sl-color-hairline)}.sl-container:where(.astro-oil7k7jf){max-width:var(--sl-content-width)}.sl-container:where(.astro-oil7k7jf)>*+*{margin-top:1.5rem}@media (width>=72rem){.sl-container:where(.astro-oil7k7jf){margin-inline:var(--sl-content-margin-inline,auto)}}p:where(.astro-3rf4otau){border:1px solid var(--sl-color-orange);background-color:var(--sl-color-orange-low);color:var(--sl-color-orange-high);width:max-content;max-width:100%;font-size:var(--sl-text-body-sm);line-height:var(--sl-line-height-headings);text-align:start;align-items:center;gap:.75em;padding:.75em 1em}a:where(.astro-xk5gmzsg){color:var(--sl-color-gray-3);align-items:center;gap:.5rem;text-decoration:none}a:where(.astro-xk5gmzsg):hover{color:var(--sl-color-white)}.pagination-links:where(.astro-jgq3vlii){grid-template-columns:repeat(auto-fit,minmax(min(18rem,100%),1fr));gap:1rem;display:grid}a:where(.astro-jgq3vlii){border:1px solid var(--sl-color-gray-5);width:100%;color:var(--sl-color-gray-2);box-shadow:var(--sl-shadow-md);overflow-wrap:anywhere;border-radius:.5rem;flex-grow:1;flex-basis:calc(50% - .5rem);justify-content:flex-start;align-items:center;gap:.5rem;padding:1rem;text-decoration:none;display:flex}:where(.astro-jgq3vlii)[rel=next]{text-align:end;flex-direction:row-reverse;justify-content:end}a:where(.astro-jgq3vlii):hover{border-color:var(--sl-color-gray-2)}.link-title:where(.astro-jgq3vlii){color:var(--sl-color-white);font-size:var(--sl-text-2xl);line-height:var(--sl-line-height-headings)}svg:where(.astro-jgq3vlii){flex-shrink:0}footer:where(.astro-xhxjzfa7){flex-direction:column;gap:1.5rem}.meta:where(.astro-xhxjzfa7){font-size:var(--sl-text-sm);color:var(--sl-color-gray-3);flex-wrap:wrap;justify-content:space-between;gap:.75rem 3rem;margin-top:3rem}.meta:where(.astro-xhxjzfa7)>p:only-child{margin-inline-start:auto}.kudos:where(.astro-xhxjzfa7){font-size:var(--sl-text-xs);color:var(--sl-color-gray-3);align-items:center;gap:.5em;margin:1.5rem auto;text-decoration:none}.kudos:where(.astro-xhxjzfa7):hover{color:var(--sl-color-white)}label:where(.astro-r2p65idu){--sl-label-icon-size:.875rem;--sl-caret-size:1.25rem;--sl-inline-padding:.5rem;color:var(--sl-color-gray-2);align-items:center;gap:.25rem;display:flex;position:relative}label:where(.astro-r2p65idu):hover{color:var(--sl-color-white)}.icon:where(.astro-r2p65idu){pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}select:where(.astro-r2p65idu){padding-block:.625rem;padding-inline:calc(var(--sl-label-icon-size) + var(--sl-inline-padding) + .25rem) calc(var(--sl-caret-size) + var(--sl-inline-padding) + .25rem);margin-inline:calc(var(--sl-inline-padding) * -1);width:calc(var(--sl-select-width) + var(--sl-inline-padding) * 2);text-overflow:ellipsis;color:inherit;cursor:pointer;appearance:none;background-color:#0000;border:0}option:where(.astro-r2p65idu){background-color:var(--sl-color-bg-nav);color:var(--sl-color-gray-1)}@media (width>=50rem){select:where(.astro-r2p65idu){font-size:var(--sl-text-sm)}}site-search:where(.astro-ac66eqjo){display:contents}button:where(.astro-ac66eqjo)[data-open-modal]{color:var(--sl-color-gray-1);cursor:pointer;height:2.5rem;font-size:var(--sl-text-xl);background-color:#0000;border:0;align-items:center;gap:.5rem;display:flex}@media (width>=50rem){button:where(.astro-ac66eqjo)[data-open-modal]{border:1px solid var(--sl-color-gray-5);background-color:var(--sl-color-black);color:var(--sl-color-gray-2);font-size:var(--sl-text-sm);border-radius:.5rem;width:100%;max-width:22rem;padding-inline:.75rem .5rem}button:where(.astro-ac66eqjo)[data-open-modal]:hover{border-color:var(--sl-color-gray-2);color:var(--sl-color-white)}button:where(.astro-ac66eqjo)[data-open-modal]>:where(.astro-ac66eqjo):last-child{margin-inline-start:auto}}button:where(.astro-ac66eqjo)>kbd:where(.astro-ac66eqjo){font-size:var(--sl-text-2xs);background-color:var(--sl-color-gray-6);border-radius:.25rem;gap:.25em;padding-inline:.375rem}kbd:where(.astro-ac66eqjo){font-family:var(--__sl-font)}dialog:where(.astro-ac66eqjo){background-color:var(--sl-color-gray-6);border:1px solid var(--sl-color-gray-5);width:100%;max-width:100%;height:100%;max-height:100%;box-shadow:var(--sl-shadow-lg);margin:0}dialog:where(.astro-ac66eqjo)[open]{display:flex}dialog:where(.astro-ac66eqjo)::backdrop{background-color:var(--sl-color-backdrop-overlay);backdrop-filter:blur(.25rem)}.dialog-frame:where(.astro-ac66eqjo){flex-direction:column;flex-grow:1;gap:1rem;padding:1rem;position:relative;overflow:auto}button:where(.astro-ac66eqjo)[data-close-modal]{z-index:1;cursor:pointer;height:3.25rem;color:var(--sl-color-text-accent);background:0 0;border:0;align-self:flex-end;align-items:center;padding:.25rem;position:absolute}@media (width>=50rem){dialog:where(.astro-ac66eqjo){border-radius:.5rem;width:90%;max-width:40rem;height:max-content;min-height:15rem;max-height:calc(100% - 8rem);margin:4rem auto auto}.dialog-frame:where(.astro-ac66eqjo){padding:1.5rem}}[data-search-modal-open]{overflow:hidden}#starlight__search-form{align-items:center;display:flex;position:relative}#starlight__search-input{width:100%;font-family:var(--__sl-font);font-size:var(--sl-text-base);color:var(--sl-color-white);background-color:var(--sl-color-black);border:1px solid var(--sl-color-gray-5);border-radius:.5rem;padding:.75rem 1rem}#starlight__search-input:focus{border-color:var(--sl-color-accent);outline:none}#starlight__search-clear{font-size:var(--sl-text-xs);color:var(--sl-color-gray-2);cursor:pointer;background:0 0;border:0;padding:.25rem .5rem;position:absolute;inset-inline-end:.5rem}#starlight__search-clear:hover{color:var(--sl-color-white)}#starlight__search-results-area{margin-top:1rem}#starlight__search-message{font-size:var(--sl-text-sm);color:var(--sl-color-gray-2);margin:0 0 .75rem}#starlight__search-results{flex-direction:column;gap:1.25rem;margin:0;padding:0;list-style:none;display:flex}.sl-search-result{border-top:1px solid var(--sl-color-gray-5);padding-top:1rem}.sl-search-result:first-child{border-top:0;padding-top:0}.sl-search-result__link{color:var(--sl-color-white);font-weight:600;text-decoration:none}.sl-search-result__link:hover{text-decoration:underline}.sl-search-result__link--page{font-size:var(--sl-text-lg)}.sl-search-result__excerpt{font-size:var(--sl-text-sm);color:var(--sl-color-gray-2);overflow-wrap:anywhere;margin:.25rem 0 0}.sl-search-result__entries{flex-direction:column;gap:.75rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.sl-search-result__entry--nested{border-inline-start:2px solid var(--sl-color-gray-5);padding-inline-start:1rem}.sl-search-result__entry--nested .sl-search-result__link{font-size:var(--sl-text-sm);font-weight:500}mark{color:inherit;text-decoration:underline;text-decoration-color:var(--sl-color-accent);background-color:#0000;font-weight:700}.site-title:where(.astro-clw6ags5){align-items:center;gap:var(--sl-nav-gap);font-size:var(--sl-text-h4);color:var(--sl-color-text-accent);white-space:nowrap;min-width:0;font-weight:600;text-decoration:none}span:where(.astro-clw6ags5){overflow:hidden}img:where(.astro-clw6ags5){height:calc(var(--sl-nav-height) - 2 * var(--sl-nav-pad-y));object-fit:contain;object-position:0 50%;width:auto;max-width:100%}a:where(.astro-cg55etiy){color:var(--sl-color-text-accent);margin:-.5em;padding:.5em}a:where(.astro-cg55etiy):hover{color:var(--sl-color-white)}.header:where(.astro-nczgtkxc){gap:var(--sl-nav-gap);justify-content:space-between;align-items:center;height:100%;display:flex}.title-wrapper:where(.astro-nczgtkxc){min-width:0;margin:-.25rem;padding:.25rem;overflow:clip}.right-group:where(.astro-nczgtkxc),.social-icons:where(.astro-nczgtkxc){align-items:center;gap:1rem}.social-icons:where(.astro-nczgtkxc):after{content:"";border-inline-end:1px solid var(--sl-color-gray-5);height:2rem}@media (width>=50rem){:root[data-has-sidebar]{--__sidebar-pad:calc(2 * var(--sl-nav-pad-x))}:root:not([data-has-toc]){--__toc-width:0rem}.header:where(.astro-nczgtkxc){--__sidebar-width:max(0rem, var(--sl-content-inline-start,0rem) - var(--sl-nav-pad-x));--__main-column-fr:calc(( 100% + var(--__sidebar-pad,0rem) - var(--__toc-width,var(--sl-sidebar-width)) - (2 * var(--__toc-width,var(--sl-nav-pad-x))) - var(--sl-content-inline-start,0rem) - var(--sl-content-width) ) / 2);grid-template-columns: minmax(calc(var(--__sidebar-width) + max(0rem, var(--__main-column-fr) - var(--sl-nav-gap))), auto) 1fr auto;align-content:center;display:grid}}.hero:where(.astro-q2ezz3gc){grid-template-columns:100%;align-items:center;gap:1rem;padding-bottom:1rem;display:grid}.hero:where(.astro-q2ezz3gc)>img:where(.astro-q2ezz3gc),.hero:where(.astro-q2ezz3gc)>.hero-html:where(.astro-q2ezz3gc){object-fit:contain;width:min(70%,20rem);height:auto;margin-inline:auto}.stack:where(.astro-q2ezz3gc){text-align:center;flex-direction:column;gap:clamp(1.5rem,1.5rem + 1vw,2rem)}.copy:where(.astro-q2ezz3gc){flex-direction:column;align-items:center;gap:1rem}.copy:where(.astro-q2ezz3gc)>:where(.astro-q2ezz3gc){max-width:50ch}h1:where(.astro-q2ezz3gc){font-size:clamp(var(--sl-text-3xl), calc(.25rem + 5vw), var(--sl-text-6xl));line-height:var(--sl-line-height-headings);color:var(--sl-color-white);font-weight:600}.tagline:where(.astro-q2ezz3gc){font-size:clamp(var(--sl-text-base), calc(.0625rem + 2vw), var(--sl-text-xl));color:var(--sl-color-gray-2)}.actions:where(.astro-q2ezz3gc){flex-wrap:wrap;justify-content:center;gap:1rem 2rem}@media (width>=50rem){.hero:where(.astro-q2ezz3gc){grid-template-columns:7fr 4fr;gap:3%;padding-block:clamp(2.5rem,1rem + 10vmin,10rem)}.hero:where(.astro-q2ezz3gc)>img:where(.astro-q2ezz3gc),.hero:where(.astro-q2ezz3gc)>.hero-html:where(.astro-q2ezz3gc){order:2;width:min(100%,25rem)}.stack:where(.astro-q2ezz3gc){text-align:start}.copy:where(.astro-q2ezz3gc){align-items:flex-start}.actions:where(.astro-q2ezz3gc){justify-content:flex-start}}button:where(.astro-vvx7mffu){top:calc((var(--sl-nav-height) - var(--sl-menu-button-size)) / 2);z-index:var(--sl-z-index-navbar);width:var(--sl-menu-button-size);height:var(--sl-menu-button-size);background-color:var(--sl-color-white);color:var(--sl-color-black);box-shadow:var(--sl-shadow-md);cursor:pointer;border:0;border-radius:50%;padding:.5rem;position:fixed;inset-inline-end:var(--sl-nav-pad-x)}:where(.astro-vvx7mffu)[aria-expanded=true] button:where(.astro-vvx7mffu){background-color:var(--sl-color-gray-2);box-shadow:none}:where(.astro-vvx7mffu)[aria-expanded=true] button:where(.astro-vvx7mffu) .open-menu:where(.astro-vvx7mffu),:where(.astro-vvx7mffu):not([aria-expanded=true]) button:where(.astro-vvx7mffu) .close-menu:where(.astro-vvx7mffu){display:none}[data-theme=light] button:where(.astro-vvx7mffu){background-color:var(--sl-color-black);color:var(--sl-color-white)}[data-theme=light] :where(.astro-vvx7mffu)[aria-expanded=true] button:where(.astro-vvx7mffu){background-color:var(--sl-color-gray-5)}[data-mobile-menu-expanded]{overflow:hidden}@media (width>=50rem){[data-mobile-menu-expanded]{overflow:auto}}.page:where(.astro-gqpr5s5a){flex-direction:column;min-height:100vh}.header:where(.astro-gqpr5s5a){z-index:var(--sl-z-index-navbar);width:100%;height:var(--sl-nav-height);border-bottom:1px solid var(--sl-color-hairline-shade);padding:var(--sl-nav-pad-y) var(--sl-nav-pad-x);background-color:var(--sl-color-bg-nav);padding-inline-end:var(--sl-nav-pad-x);position:fixed;inset-block-start:0;inset-inline-start:0}[data-has-sidebar] .header:where(.astro-gqpr5s5a){padding-inline-end:calc(var(--sl-nav-gap) + var(--sl-nav-pad-x) + var(--sl-menu-button-size))}.sidebar-pane:where(.astro-gqpr5s5a){visibility:var(--sl-sidebar-visibility,hidden);z-index:var(--sl-z-index-menu);inset-block:var(--sl-nav-height) 0;background-color:var(--sl-color-black);scrollbar-gutter:stable;width:100%;position:fixed;inset-inline-start:0;overflow-y:auto}[aria-expanded=true]~.sidebar-pane:where(.astro-gqpr5s5a){--sl-sidebar-visibility:visible}.sidebar-content:where(.astro-gqpr5s5a){height:100%;min-height:max-content;padding:1rem var(--sl-sidebar-pad-x) 0;flex-direction:column;gap:1rem}@media (width>=50rem){.sidebar-content:where(.astro-gqpr5s5a):after{content:"";padding-bottom:1px}}.main-frame:where(.astro-gqpr5s5a){padding-top:calc(var(--sl-nav-height) + var(--sl-mobile-toc-height));padding-inline-start:var(--sl-content-inline-start)}@media (width>=50rem){[data-has-sidebar] .header:where(.astro-gqpr5s5a){padding-inline-end:var(--sl-nav-pad-x)}.sidebar-pane:where(.astro-gqpr5s5a){--sl-sidebar-visibility:visible;width:var(--sl-sidebar-width);background-color:var(--sl-color-bg-sidebar);border-inline-end:1px solid var(--sl-color-hairline-shade)}}ul:where(.astro-cxyftcne){padding:0;list-style:none}a:where(.astro-cxyftcne){--pad-inline:.5rem;padding-block:.25rem;padding-inline:calc(1rem * var(--depth) + var(--pad-inline)) var(--pad-inline);border-radius:.25rem;line-height:1.25;display:block}a:where(.astro-cxyftcne)[aria-current=true]{color:var(--sl-color-text-accent)}.isMobile:where(.astro-cxyftcne) a:where(.astro-cxyftcne){--pad-inline:1rem;justify-content:space-between;gap:var(--pad-inline);border-top:1px solid var(--sl-color-gray-6);color:var(--sl-color-text);font-size:var(--sl-text-sm);outline-offset:var(--sl-outline-offset-inside);border-radius:0;padding-block:.5rem;text-decoration:none;display:flex}.isMobile:where(.astro-cxyftcne):first-child>li:where(.astro-cxyftcne):first-child>a:where(.astro-cxyftcne){border-top:0}.isMobile:where(.astro-cxyftcne) a:where(.astro-cxyftcne)[aria-current=true],.isMobile:where(.astro-cxyftcne) a:where(.astro-cxyftcne)[aria-current=true]:hover,.isMobile:where(.astro-cxyftcne) a:where(.astro-cxyftcne)[aria-current=true]:focus{color:var(--sl-color-white);background-color:unset}.isMobile:where(.astro-cxyftcne) a:where(.astro-cxyftcne)[aria-current=true]:after{content:"";background-color:var(--sl-color-text-accent);flex-shrink:0;width:1rem;mask-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNCAxNCc+PHBhdGggZD0nTTEwLjkxNCA0LjIwNmEuNTgzLjU4MyAwIDAgMC0uODI4IDBMNS43NCA4LjU1NyAzLjkxNCA2LjcyNmEuNTk2LjU5NiAwIDAgMC0uODI4Ljg1N2wyLjI0IDIuMjRhLjU4My41ODMgMCAwIDAgLjgyOCAwbDQuNzYtNC43NmEuNTgzLjU4MyAwIDAgMCAwLS44NTdaJy8+PC9zdmc+Cg==);mask-repeat:no-repeat}nav:where(.astro-5ulgm6bh){z-index:var(--sl-z-index-toc);top:calc(var(--sl-nav-height) - 1px);border-top:1px solid var(--sl-color-gray-5);background-color:var(--sl-color-bg-nav);position:fixed;inset-inline:0}@media (width>=50rem){nav:where(.astro-5ulgm6bh){inset-inline-start:var(--sl-content-inline-start,0)}}summary:where(.astro-5ulgm6bh){height:var(--sl-mobile-toc-height);border-bottom:1px solid var(--sl-color-hairline-shade);font-size:var(--sl-text-xs);outline-offset:var(--sl-outline-offset-inside);align-items:center;gap:.5rem;padding:.5rem 1rem}summary:where(.astro-5ulgm6bh)::marker{display:none}summary:where(.astro-5ulgm6bh)::-webkit-details-marker{display:none}.toggle:where(.astro-5ulgm6bh){border:1px solid var(--sl-color-gray-5);background-color:var(--sl-color-black);user-select:none;cursor:pointer;border-radius:.5rem;flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;padding-block:.5rem;padding-inline:.75rem .5rem;line-height:1}details:where(.astro-5ulgm6bh)[open] .toggle:where(.astro-5ulgm6bh){color:var(--sl-color-white);border-color:var(--sl-color-accent)}details:where(.astro-5ulgm6bh) .toggle:where(.astro-5ulgm6bh):hover{color:var(--sl-color-white);border-color:var(--sl-color-gray-2)}[dir=rtl] .caret:where(.astro-5ulgm6bh){transform:rotate(180deg)}details:where(.astro-5ulgm6bh)[open] .caret:where(.astro-5ulgm6bh){transform:rotate(90deg)}.display-current:where(.astro-5ulgm6bh){white-space:nowrap;text-overflow:ellipsis;color:var(--sl-color-white);overflow:hidden}.dropdown:where(.astro-5ulgm6bh){--border-top:1px;margin-top:calc(-1 * var(--border-top));border:var(--border-top) solid var(--sl-color-gray-6);border-top-color:var(--sl-color-hairline-shade);max-height:calc(85vh - var(--sl-nav-height) - var(--sl-mobile-toc-height));background-color:var(--sl-color-black);box-shadow:var(--sl-shadow-md);overscroll-behavior:contain;overflow-y:auto}.right-sidebar-panel:where(.astro-q5mffni3){padding:1rem var(--sl-sidebar-pad-x)}.sl-container:where(.astro-q5mffni3){width:calc(var(--sl-sidebar-width) - 2 * var(--sl-sidebar-pad-x))}.right-sidebar-panel:where(.astro-q5mffni3) h2{color:var(--sl-color-white);font-size:var(--sl-text-h5);font-weight:600;line-height:var(--sl-line-height-headings);margin-bottom:.5rem}.right-sidebar-panel:where(.astro-q5mffni3) :where(a){font-size:var(--sl-text-xs);color:var(--sl-color-gray-3);overflow-wrap:anywhere;text-decoration:none;display:block}.right-sidebar-panel:where(.astro-q5mffni3) :where(a):hover{color:var(--sl-color-white)}@media (width>=72rem){.sl-container:where(.astro-q5mffni3){max-width:calc(( ( 100vw - var(--sl-sidebar-width) - 2 * var(--sl-content-pad-x) - 2 * var(--sl-sidebar-pad-x) ) * .25 ))}}h1:where(.astro-2sm4b3ln){font-size:var(--sl-text-h1);line-height:var(--sl-line-height-headings);color:var(--sl-color-white);margin-top:1rem;font-weight:600}sl-sidebar-state-persist:where(.astro-f5yvicm7){display:contents}.social-icons:where(.astro-b5gddk54){align-items:center;gap:1rem;margin-inline-end:auto;padding-block:1rem;display:flex}.social-icons:where(.astro-b5gddk54):empty{display:none}.mobile-preferences:where(.astro-b5gddk54){border-top:1px solid var(--sl-color-gray-6);flex-wrap:wrap;justify-content:space-between;column-gap:1rem;padding:.5rem 0}ul:where(.astro-wv7whodv){--sl-sidebar-item-padding-inline:.5rem;padding:0;list-style:none}li:where(.astro-wv7whodv){overflow-wrap:anywhere}.top-level:where(.astro-wv7whodv)>li:where(.astro-wv7whodv)+li:where(.astro-wv7whodv){margin-top:.75rem}.large:where(.astro-wv7whodv){font-size:var(--sl-text-lg);color:var(--sl-color-white);font-weight:600}a:where(.astro-wv7whodv){color:var(--sl-color-gray-2);padding:.3em var(--sl-sidebar-item-padding-inline);border-radius:.25rem;line-height:1.4;text-decoration:none;display:block}a:where(.astro-wv7whodv):hover,a:where(.astro-wv7whodv):focus{color:var(--sl-color-white)}:where(.astro-wv7whodv)[aria-current=page],:where(.astro-wv7whodv)[aria-current=page]:hover,:where(.astro-wv7whodv)[aria-current=page]:focus{color:var(--sl-color-text-invert);background-color:var(--sl-color-text-accent);font-weight:600}.page-toc:where(.astro-wv7whodv){border-inline-start:1px solid var(--sl-color-hairline-light);margin-inline-start:var(--sl-sidebar-item-padding-inline);margin-top:.25rem;padding-inline-start:var(--sl-sidebar-item-padding-inline)}.page-toc:where(.astro-wv7whodv) a:where(.astro-wv7whodv){font-size:var(--sl-text-xs);color:var(--sl-color-gray-3)}.page-toc:where(.astro-wv7whodv) .depth-3:where(.astro-wv7whodv) a:where(.astro-wv7whodv){padding-inline-start:1rem}@media (width>=50rem){.top-level:where(.astro-wv7whodv)>li:where(.astro-wv7whodv)+li:where(.astro-wv7whodv){margin-top:.5rem}.large:where(.astro-wv7whodv){font-size:var(--sl-text-base)}}a:where(.astro-vxeigawq){clip:rect(0, 0, 0, 0);top:.75rem;position:fixed;inset-inline-start:.75rem}a:where(.astro-vxeigawq):focus{clip:unset;z-index:var(--sl-z-index-skiplink);color:var(--sl-color-text-invert);background-color:var(--sl-color-text-accent);box-shadow:var(--sl-shadow-lg);padding:.5rem 1rem;text-decoration:none;display:block}.main-pane:where(.astro-abfeecmu){isolation:isolate}@media (width>=72rem){.right-sidebar-container:where(.astro-abfeecmu){width:max(var(--sl-sidebar-width), calc(var(--sl-sidebar-width) + (100% - var(--sl-content-width) - var(--sl-sidebar-width)) / 2));order:2;position:relative}.right-sidebar:where(.astro-abfeecmu){border-inline-start:1px solid var(--sl-color-hairline);padding-top:var(--sl-nav-height);scrollbar-width:none;width:100%;height:100vh;position:fixed;top:0;overflow-y:auto}.main-pane:where(.astro-abfeecmu){width:100%}[data-has-sidebar][data-has-toc] .main-pane:where(.astro-abfeecmu){--sl-content-margin-inline:auto 0;width:min(calc(100% - var(--sl-sidebar-width)), calc(var(--sl-content-width) + (100% - var(--sl-content-width) - var(--sl-sidebar-width)) / 2));order:1}}}@layer starlight.content{.sl-markdown-content .sl-heading-wrapper{--sl-anchor-icon-size:.8275em;--sl-anchor-icon-gap:.25em;--sl-anchor-icon-space:calc(var(--sl-anchor-icon-size) + var(--sl-anchor-icon-gap));line-height:var(--sl-line-height-headings)}.sl-markdown-content :not(h1,h2,h3,h4,h5,h6,.sl-heading-wrapper)+.sl-heading-wrapper{margin-top:1.5em}.sl-markdown-content .sl-heading-wrapper.level-h1{font-size:var(--sl-text-h1)}.sl-markdown-content .sl-heading-wrapper.level-h2{font-size:var(--sl-text-h2)}.sl-markdown-content .sl-heading-wrapper.level-h3{font-size:var(--sl-text-h3)}.sl-markdown-content .sl-heading-wrapper.level-h4{font-size:var(--sl-text-h4)}.sl-markdown-content .sl-heading-wrapper.level-h5{font-size:var(--sl-text-h5)}.sl-markdown-content .sl-heading-wrapper.level-h6{font-size:var(--sl-text-h6)}.sl-markdown-content .sl-heading-wrapper>:first-child{padding-inline-end:var(--sl-anchor-icon-space);display:inline}.sl-markdown-content .sl-anchor-link{user-select:none;margin-inline-start:calc(-1 * var(--sl-anchor-icon-size));display:inline-flex;position:relative}.sl-markdown-content .sl-anchor-link:after{content:"";position:absolute;inset:-.25rem -.5rem}.sl-markdown-content .sl-anchor-icon>svg{width:var(--sl-anchor-icon-size);vertical-align:top;transform:translateY(calc((var(--sl-line-height-headings) * 1em - var(--sl-anchor-icon-size)) / 2));display:inline}@media (hover:hover){.sl-markdown-content .sl-anchor-link{opacity:0}.sl-markdown-content .sl-anchor-link:focus,.sl-markdown-content .sl-heading-wrapper:hover .sl-anchor-link{opacity:1}}.sl-markdown-content :not(a,strong,em,del,span,input,code,br)+:not(a,strong,em,del,span,input,code,br,:where(.not-content *)),.sl-markdown-content :not(a,strong,em,del,span,input,code,br)+:is(astro-island,astro-slot)>:not(a,strong,em,del,span,input,code,br,:where(.not-content *)):first-child{margin-top:var(--sl-content-gap-y)}.sl-markdown-content :not(h1,h2,h3,h4,h5,h6)+:is(h1,h2,h3,h4,h5,h6):not(:where(.not-content *)){margin-top:1.5em}.sl-markdown-content li+li:not(:where(.not-content *)),.sl-markdown-content dt+dt:not(:where(.not-content *)),.sl-markdown-content dt+dd:not(:where(.not-content *)),.sl-markdown-content dd+dd:not(:where(.not-content *)){margin-top:.25rem}.sl-markdown-content li:not(:where(.not-content *)){overflow-wrap:anywhere}.sl-markdown-content :is(ol,ul):has(>li>:not(a,strong,em,del,span,input,code,br,script,ol,ul))>li>:is(:last-child:not(a,strong,em,del,span,input,code,br,script,:where(.not-content *)),:not(script):has(~script:last-child):not(:has(~:not(script)))){margin-bottom:1.25rem}.sl-markdown-content dt:not(:where(.not-content *)){font-weight:700}.sl-markdown-content dd:not(:where(.not-content *)){padding-inline-start:1rem}.sl-markdown-content :is(h1,h2,h3,h4,h5,h6):not(:where(.not-content *)){color:var(--sl-color-white);line-height:var(--sl-line-height-headings);font-weight:600}.sl-markdown-content :is(img,picture,video,canvas,svg,iframe):not(:where(.not-content *)){max-width:100%;height:auto;display:block}.sl-markdown-content h1:not(:where(.not-content *)){font-size:var(--sl-text-h1)}.sl-markdown-content h2:not(:where(.not-content *)){font-size:var(--sl-text-h2)}.sl-markdown-content h3:not(:where(.not-content *)){font-size:var(--sl-text-h3)}.sl-markdown-content h4:not(:where(.not-content *)){font-size:var(--sl-text-h4)}.sl-markdown-content h5:not(:where(.not-content *)){font-size:var(--sl-text-h5)}.sl-markdown-content h6:not(:where(.not-content *)){font-size:var(--sl-text-h6)}.sl-markdown-content a:not(:where(.not-content *)){color:var(--sl-color-text-accent)}.sl-markdown-content a:hover:not(:where(.not-content *)){color:var(--sl-color-white)}.sl-markdown-content code:not(:where(.not-content *)){background-color:var(--sl-color-bg-inline-code);font-size:var(--sl-text-code-sm);margin-block:-.125rem;padding:.125rem .375rem}.sl-markdown-content :is(h1,h2,h3,h4,h5,h6) code{font-size:inherit}.sl-markdown-content pre:not(:where(.not-content *)){border:1px solid var(--sl-color-gray-5);font-size:var(--sl-text-code);tab-size:2;padding:.75rem 1rem}.sl-markdown-content pre code:not(:where(.not-content *)){all:unset;font-family:var(--__sl-font-mono)}.sl-markdown-content blockquote:not(:where(.not-content *)){border-inline-start:1px solid var(--sl-color-gray-5);padding-inline-start:1rem}.sl-markdown-content table:not(:where(.not-content *)){border-spacing:0;display:block;overflow:auto}.sl-markdown-content :is(th,td):not(:where(.not-content *)){border-bottom:1px solid var(--sl-color-gray-5);vertical-align:baseline;padding:.5rem 1rem}.sl-markdown-content :is(th:first-child,td:first-child):not(:where(.not-content *)){padding-inline-start:0}.sl-markdown-content :is(th:last-child,td:last-child):not(:where(.not-content *)){padding-inline-end:0}.sl-markdown-content th:not(:where(.not-content *)){color:var(--sl-color-white);font-weight:600}.sl-markdown-content th:not([align]):not(:where(.not-content *)){text-align:start}.sl-markdown-content .starlight-aside :is(th,td,hr,blockquote):not(:where(.not-content *)){border-color:var(--sl-color-gray-4)}@supports (border-color:color-mix(in srgb, var(--sl-color-asides-text-accent) 30%, transparent)
|
|
2
|
-
){.sl-markdown-content .starlight-aside :is(th,td,hr,blockquote):not(:where(.not-content *)){border-color:color-mix(in srgb, var(--sl-color-asides-text-accent) 30%, transparent)}}@supports (border-color:color-mix(in srgb, var(--sl-color-asides-text-accent) 12%, transparent)
|
|
3
|
-
){.sl-markdown-content .starlight-aside code:not(:where(.not-content *)){background-color:color-mix(in srgb, var(--sl-color-asides-text-accent) 12%, transparent)}}.sl-markdown-content hr:not(:where(.not-content *)){border:0;border-bottom:1px solid var(--sl-color-hairline)}.sl-markdown-content details:not(:where(.not-content *)){--sl-details-border-color:var(--sl-color-gray-5);--sl-details-border-color--hover:var(--sl-color-text-accent);border-inline-start:2px solid var(--sl-details-border-color);padding-inline-start:1rem}.sl-markdown-content details:not([open]):hover:not(:where(.not-content *)),.sl-markdown-content details:has(>summary:hover):not(:where(.not-content *)){border-color:var(--sl-details-border-color--hover)}.sl-markdown-content summary:not(:where(.not-content *)){color:var(--sl-color-white);cursor:pointer;margin-inline-start:-.5rem;padding-inline-start:.5rem;font-weight:600;display:block}.sl-markdown-content details[open]>summary:not(:where(.not-content *)){margin-bottom:1rem}.sl-markdown-content summary:not(:where(.not-content *))::marker{display:none}.sl-markdown-content summary:not(:where(.not-content *))::-webkit-details-marker{display:none}.sl-markdown-content summary:not(:where(.not-content *)):before{--sl-details-marker-size:1.25rem;content:"";height:var(--sl-details-marker-size);width:var(--sl-details-marker-size);margin-inline:calc((var(--sl-details-marker-size) / 4) * -1) .25rem;vertical-align:middle;background-color:currentColor;display:inline-block;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14.8 11.3 10.6 7a1 1 0 1 0-1.4 1.5l3.5 3.5-3.5 3.5a1 1 0 0 0 0 1.4 1 1 0 0 0 .7.3 1 1 0 0 0 .7-.3l4.2-4.2a1 1 0 0 0 0-1.4Z'/%3E%3C/svg%3E%0A");mask-repeat:no-repeat}@media (prefers-reduced-motion:no-preference){.sl-markdown-content summary:not(:where(.not-content *)):before{transition:transform .2s ease-in-out}}.sl-markdown-content details[open]>summary:not(:where(.not-content *)):before{transform:rotate(90deg)}[dir=rtl] .sl-markdown-content summary:not(:where(.not-content *)):before,.sl-markdown-content [dir=rtl] summary:not(:where(.not-content *)):before{transform:rotate(180deg)}.sl-markdown-content summary:not(:where(.not-content *)) p:only-child{display:inline}.sl-markdown-content .starlight-aside details:not(:where(.not-content *)){--sl-details-border-color:var(--sl-color-asides-border);--sl-details-border-color--hover:var(--sl-color-asides-text-accent)}}@layer starlight.components{.starlight-aside{border-inline-start:.25rem solid var(--sl-color-asides-border);color:var(--sl-color-white);padding:1rem}.starlight-aside--note{--sl-color-asides-text-accent:var(--sl-color-blue-high);--sl-color-asides-border:var(--sl-color-blue);background-color:var(--sl-color-blue-low)}.starlight-aside--tip{--sl-color-asides-text-accent:var(--sl-color-purple-high);--sl-color-asides-border:var(--sl-color-purple);background-color:var(--sl-color-purple-low)}.starlight-aside--caution{--sl-color-asides-text-accent:var(--sl-color-orange-high);--sl-color-asides-border:var(--sl-color-orange);background-color:var(--sl-color-orange-low)}.starlight-aside--danger{--sl-color-asides-text-accent:var(--sl-color-red-high);--sl-color-asides-border:var(--sl-color-red);background-color:var(--sl-color-red-low)}.starlight-aside__title{font-size:var(--sl-text-h5);font-weight:600;line-height:var(--sl-line-height-headings);color:var(--sl-color-asides-text-accent);align-items:center;gap:.5rem;display:flex}.starlight-aside__icon{width:1em;height:1em;font-size:1.333em}.starlight-aside__title+.starlight-aside__content{margin-top:.5rem}.starlight-aside__content:empty{display:none}.starlight-aside__content a{color:var(--sl-color-asides-text-accent)}svg:where(.astro-n5k4ipy7){color:var(--sl-icon-color);font-size:var(--sl-icon-size,1em);width:1em;height:1em}.sl-link-button:where(.astro-hlbqph7b){font-size:var(--sl-text-sm);outline-offset:.25rem;border:1px solid #0000;border-radius:999rem;align-items:center;gap:.5em;padding:.4375rem 1.125rem;line-height:1.1875;text-decoration:none;display:inline-flex}.sl-link-button:where(.astro-hlbqph7b).primary{background:var(--sl-color-text-accent);border-color:var(--sl-color-text-accent);color:var(--sl-color-black)}.sl-link-button:where(.astro-hlbqph7b).primary:hover{color:var(--sl-color-black)}.sl-link-button:where(.astro-hlbqph7b).secondary{border-color:inherit;color:var(--sl-color-white)}.sl-link-button:where(.astro-hlbqph7b).minimal{color:var(--sl-color-white);padding-inline:0}.sl-link-button:where(.astro-hlbqph7b) svg{flex-shrink:0}@media (width>=50rem){.sl-link-button:where(.astro-hlbqph7b){font-size:var(--sl-text-base);padding:.9375rem 1.25rem}}.sl-markdown-content .sl-link-button:where(.astro-hlbqph7b){margin-inline-end:1rem}.sl-markdown-content .sl-link-button:where(.astro-hlbqph7b):not(:where(p *)){margin-block:1rem}.kudos:where(.astro-xhxjzfa7) svg{color:var(--sl-color-orange)}.label-icon:where(.astro-r2p65idu){font-size:var(--sl-label-icon-size);inset-inline-start:0}.caret:where(.astro-r2p65idu){font-size:var(--sl-caret-size);inset-inline-end:0}}@layer starlight.utils{.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sl-hidden{display:none}.sl-flex{display:flex}.sl-block{display:block}@media (width>=50rem){.md\:sl-hidden{display:none}.md\:sl-flex{display:flex}.md\:sl-block{display:block}}@media (width>=72rem){.lg\:sl-hidden{display:none}.lg\:sl-flex{display:flex}.lg\:sl-block{display:block}}[data-theme=light] .light\:sl-hidden,[data-theme=dark] .dark\:sl-hidden{display:none}[dir=rtl] .rtl\:flip:not(:where([dir=rtl] [dir=ltr] *)){transform:matrix(-1,0,0,1,0,0)}}html:not([data-has-toc]){--sl-mobile-toc-height:0rem}html:not([data-has-sidebar]){--sl-content-width:67.5rem}html{scroll-padding-top:calc(1.5rem + var(--sl-nav-height) + var(--sl-mobile-toc-height))}main:where(.astro-vdxcvpsm){padding:var(--sl-main-pad)}@media (width>=50em){:where(.astro-vdxcvpsm)[data-has-sidebar]{--sl-content-inline-start:var(--sl-sidebar-width)}}@media (width>=72em){html{scroll-padding-top:calc(1.5rem + var(--sl-nav-height))}}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|