diff --git a/build.sh b/build.sh new file mode 100755 index 0000000..48b3207 --- /dev/null +++ b/build.sh @@ -0,0 +1,12 @@ +#!/bin/bash +# This script builds the documentation site using MkDocs and serves it to the Caddy web server. + +# Build the documentation site +rm -rf ./site +mkdocs build --clean + +# Clean up the web server directory +ssh webmaster@10.10.10.102 'sudo rm -rf /usr/share/caddy/docs.bsct.me/*' + +# Copy the built documentation to the web server +scp -r ./site/* webmaster@10.10.10.102:/usr/share/caddy/docs.bsct.me diff --git a/docs/index.md b/docs/index.md index 000ea34..a305a63 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,17 +1,18 @@ -# Welcome to MkDocs +--- +title: Home +icon: material/home +hide: + - toc +--- -For full documentation visit [mkdocs.org](https://www.mkdocs.org). +This site is where I’ve started documenting everything I do in my homelab. It covers a mix of IT topics—from home networking to cloud stuff—and anything else I’ve found worth keeping track of. -## Commands +Lately, I’ve been trying to stay more organized with both tech and day-to-day processes, and this is just one more way to keep things dialed in. -* `mkdocs new [dir-name]` - Create a new project. -* `mkdocs serve` - Start the live-reloading docs server. -* `mkdocs build` - Build the documentation site. -* `mkdocs -h` - Print help message and exit. +### Here for Plex? -## Project layout +[Click here to start setting up your streaming app.](plex/user-guide/index.md) - mkdocs.yml # The configuration file. - docs/ - index.md # The documentation homepage. - ... # Other markdown pages, images and other files. +## A Note About Privacy + +Fear not—my tinfoil hat’s on tight. This site has no cookies, no external tracking. If you pop open dev tools, you’ll see everything is served statically from this domain. That means no Google fonts, no sneaky scripts—nothing tracking what pages you visit. \ No newline at end of file diff --git a/docs/knowledge-base/index.md b/docs/knowledge-base/index.md new file mode 100644 index 0000000..7340e16 --- /dev/null +++ b/docs/knowledge-base/index.md @@ -0,0 +1,5 @@ +--- +title: Knowledge Base +description: This knowledge base contains technical documentation, setup guides, troubleshooting notes, and reference material for systems, software, and other processes. +icon: material/book +--- diff --git a/docs/plex/index.md b/docs/plex/index.md new file mode 100644 index 0000000..7acb113 --- /dev/null +++ b/docs/plex/index.md @@ -0,0 +1,7 @@ +--- +title: Plex +description: Plex setup, routing, and user guide articles are included here. +icon: material/plex +--- + +This section includes articles relating to Plex configuration, path routings, user guides, etc. \ No newline at end of file diff --git a/docs/plex/server-setup.md b/docs/plex/server-setup.md new file mode 100644 index 0000000..e69de29 diff --git a/docs/plex/troubleshooting.md b/docs/plex/troubleshooting.md new file mode 100644 index 0000000..e69de29 diff --git a/docs/plex/user-guide/assets/plex.webp b/docs/plex/user-guide/assets/plex.webp new file mode 100644 index 0000000..ccc20b5 Binary files /dev/null and b/docs/plex/user-guide/assets/plex.webp differ diff --git a/docs/plex/user-guide/clients/amazon-fire-tv.md b/docs/plex/user-guide/clients/amazon-fire-tv.md new file mode 100644 index 0000000..0277136 --- /dev/null +++ b/docs/plex/user-guide/clients/amazon-fire-tv.md @@ -0,0 +1,4 @@ +--- +title: Amazon Fire TV +icon: fontawesome/brands/amazon +--- diff --git a/docs/plex/user-guide/clients/apple-tv.md b/docs/plex/user-guide/clients/apple-tv.md new file mode 100644 index 0000000..2bae27d --- /dev/null +++ b/docs/plex/user-guide/clients/apple-tv.md @@ -0,0 +1,4 @@ +--- +title: Apple TV +icon: simple/appletv +--- diff --git a/docs/plex/user-guide/clients/desktop.md b/docs/plex/user-guide/clients/desktop.md new file mode 100644 index 0000000..1d7d915 --- /dev/null +++ b/docs/plex/user-guide/clients/desktop.md @@ -0,0 +1,4 @@ +--- +title: Desktop +icon: material/laptop +--- diff --git a/docs/plex/user-guide/clients/google-tv.md b/docs/plex/user-guide/clients/google-tv.md new file mode 100644 index 0000000..3557eac --- /dev/null +++ b/docs/plex/user-guide/clients/google-tv.md @@ -0,0 +1,4 @@ +--- +title: Google TV +icon: fontawesome/brands/google +--- diff --git a/docs/plex/user-guide/clients/index.md b/docs/plex/user-guide/clients/index.md new file mode 100644 index 0000000..a074ffa --- /dev/null +++ b/docs/plex/user-guide/clients/index.md @@ -0,0 +1,3 @@ +--- +title: Clients +--- diff --git a/docs/plex/user-guide/clients/playstation.md b/docs/plex/user-guide/clients/playstation.md new file mode 100644 index 0000000..721b0f1 --- /dev/null +++ b/docs/plex/user-guide/clients/playstation.md @@ -0,0 +1,4 @@ +--- +title: Playstation +icon: simple/playstation +--- diff --git a/docs/plex/user-guide/clients/roku.md b/docs/plex/user-guide/clients/roku.md new file mode 100644 index 0000000..6a2920e --- /dev/null +++ b/docs/plex/user-guide/clients/roku.md @@ -0,0 +1,4 @@ +--- +title: Roku +icon: simple/roku +--- diff --git a/docs/plex/user-guide/clients/xbox.md b/docs/plex/user-guide/clients/xbox.md new file mode 100644 index 0000000..014f387 --- /dev/null +++ b/docs/plex/user-guide/clients/xbox.md @@ -0,0 +1,4 @@ +--- +title: Xbox +icon: fontawesome/brands/xbox +--- diff --git a/docs/plex/user-guide/index.md b/docs/plex/user-guide/index.md new file mode 100644 index 0000000..be82e81 --- /dev/null +++ b/docs/plex/user-guide/index.md @@ -0,0 +1,27 @@ +--- +title: User Guide +description: 'Configure your Plex client for smooth playback and high-quality streaming across devices.' +--- + +![Plex](assets/plex.webp){ width="500" } +/// caption +/// + +## Welcome to the Plex Server! + +This guide will help you configure your streaming client for the best viewing experience. It covers recommended settings to ensure smooth playback and high video quality on all your devices. + +### Recommended Clients + +Getting everything to stream perfectly across devices takes effort, but these options consistently offer the best Plex experience. Other devices may work, but performance isn’t guaranteed. + +In no certain order: + +* [Amazon Fire TV Stick 4K Max](https://amzn.to/3GEAmzg) +* [Apple TV 4K](https://www.apple.com/shop/buy-tv/apple-tv-4k) (Ethernet preferred, only $20 more) +* [Google TV Streamer 4K](https://amzn.to/4eM9D04) +* [Onn 4K Pro with Google TV](https://www.walmart.com/ip/onn-Google-TV-4K-Pro-Streaming-Device-New-2024-4K-UHD-resolution-Dolby-Vision-Dolby-ATMOS-Hands-Free-Voice-Control-Smart-Hub/5193222892) + +You’ll notice Roku devices aren’t listed. While they technically work, they often struggle with video conversion, causing playback issues. For that reason, I don’t recommend or support them. + +Ready to set up your streaming app? [Click here](clients/index.md) to continue. \ No newline at end of file diff --git a/mkdocs.yml b/mkdocs.yml index 06f3b88..fb1d192 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -20,15 +20,15 @@ theme: features: - navigation.instant - navigation.instant.progress - - navigation.tracking - navigation.path + - navigation.prune - navigation.indexes - navigation.top - navigation.footer - toc.follow - search.suggest - search.highlight - palette:: + palette: - media: "(prefers-color-scheme: light)" scheme: default toggle: @@ -47,4 +47,52 @@ theme: plugins: - privacy - search - - tags \ No newline at end of file + - tags + +# Navigation configuration +nav: + - Home: index.md + - Knowledge Base: + - knowledge-base/index.md + - Plex: + - plex/index.md + - Server Setup: plex/server-setup.md + - Troubleshooting: plex/troubleshooting.md + - User Guide: + - plex/user-guide/index.md + - Clients: + - plex/user-guide/clients/index.md + - Amazon Fire TV: plex/user-guide/clients/amazon-fire-tv.md + - Apple TV: plex/user-guide/clients/apple-tv.md + - Desktop: plex/user-guide/clients/desktop.md + - Google TV: plex/user-guide/clients/google-tv.md + - Playstation: plex/user-guide/clients/playstation.md + - Roku: plex/user-guide/clients/roku.md + - Xbox: plex/user-guide/clients/xbox.md + +markdown_extensions: + - abbr + - attr_list + - admonition + - footnotes + - pymdownx.blocks.caption + - pymdownx.details + - pymdownx.emoji: + emoji_index: !!python/name:material.extensions.emoji.twemoji + emoji_generator: !!python/name:material.extensions.emoji.to_svg + - pymdownx.highlight: + use_pygments: true + pygments_lang_class: true + auto_title: true + linenums: true + linenums_style: pymdownx-inline + line_spans: __span + - pymdownx.inlinehilite + - pymdownx.keys + - pymdownx.smartsymbols + - pymdownx.superfences + - pymdownx.tabbed: + alternate_style: true + - pymdownx.tasklist: + custom_checkbox: true + - tables \ No newline at end of file