diff --git a/docs/.gitbook/assets/2VeQ8sTGPhj4tiLy.jpg b/docs/.gitbook/assets/2VeQ8sTGPhj4tiLy.jpg new file mode 100644 index 0000000..5a1832b Binary files /dev/null and b/docs/.gitbook/assets/2VeQ8sTGPhj4tiLy.jpg differ diff --git a/docs/.gitbook/assets/5546622 b/docs/.gitbook/assets/5546622 new file mode 100644 index 0000000..ea55aaf Binary files /dev/null and b/docs/.gitbook/assets/5546622 differ diff --git a/docs/.gitbook/assets/HadrienKerlero.png b/docs/.gitbook/assets/HadrienKerlero.png new file mode 100644 index 0000000..3851a78 Binary files /dev/null and b/docs/.gitbook/assets/HadrienKerlero.png differ diff --git a/docs/.gitbook/assets/JO.png b/docs/.gitbook/assets/JO.png new file mode 100644 index 0000000..7459d60 Binary files /dev/null and b/docs/.gitbook/assets/JO.png differ diff --git a/docs/.gitbook/assets/LITUATUI.png b/docs/.gitbook/assets/LITUATUI.png new file mode 100644 index 0000000..aad2796 Binary files /dev/null and b/docs/.gitbook/assets/LITUATUI.png differ diff --git a/docs/.gitbook/assets/NI.png b/docs/.gitbook/assets/NI.png new file mode 100644 index 0000000..04a148c Binary files /dev/null and b/docs/.gitbook/assets/NI.png differ diff --git a/docs/.gitbook/assets/SeimusS.png b/docs/.gitbook/assets/SeimusS.png new file mode 100644 index 0000000..c5c20fb Binary files /dev/null and b/docs/.gitbook/assets/SeimusS.png differ diff --git a/docs/.gitbook/assets/authentik redirect url example.png b/docs/.gitbook/assets/authentik redirect url example.png new file mode 100644 index 0000000..c7bff9d Binary files /dev/null and b/docs/.gitbook/assets/authentik redirect url example.png differ diff --git a/docs/.gitbook/assets/bmc-button.png b/docs/.gitbook/assets/bmc-button.png new file mode 100644 index 0000000..464bfd9 Binary files /dev/null and b/docs/.gitbook/assets/bmc-button.png differ diff --git a/docs/.gitbook/assets/bmc-logo-yellow.png b/docs/.gitbook/assets/bmc-logo-yellow.png new file mode 100644 index 0000000..60c6dc2 Binary files /dev/null and b/docs/.gitbook/assets/bmc-logo-yellow.png differ diff --git a/docs/.gitbook/assets/brandon dacrib.png b/docs/.gitbook/assets/brandon dacrib.png new file mode 100644 index 0000000..d717bff Binary files /dev/null and b/docs/.gitbook/assets/brandon dacrib.png differ diff --git a/docs/.gitbook/assets/e93602705171fd0a.jpg b/docs/.gitbook/assets/e93602705171fd0a.jpg new file mode 100644 index 0000000..ecaf1c1 Binary files /dev/null and b/docs/.gitbook/assets/e93602705171fd0a.jpg differ diff --git a/docs/.gitbook/assets/image.png b/docs/.gitbook/assets/image.png new file mode 100644 index 0000000..4bd37f1 Binary files /dev/null and b/docs/.gitbook/assets/image.png differ diff --git a/docs/.gitbook/assets/keyxmakerx.png b/docs/.gitbook/assets/keyxmakerx.png new file mode 100644 index 0000000..2dcd22c Binary files /dev/null and b/docs/.gitbook/assets/keyxmakerx.png differ diff --git a/docs/.gitbook/assets/ldrrp.png b/docs/.gitbook/assets/ldrrp.png new file mode 100644 index 0000000..c5a1800 Binary files /dev/null and b/docs/.gitbook/assets/ldrrp.png differ diff --git a/docs/.gitbook/assets/screenshot dashboard.png b/docs/.gitbook/assets/screenshot dashboard.png new file mode 100644 index 0000000..70eab00 Binary files /dev/null and b/docs/.gitbook/assets/screenshot dashboard.png differ diff --git a/docs/.gitbook/assets/screenshot download season.png b/docs/.gitbook/assets/screenshot download season.png new file mode 100644 index 0000000..535a55c Binary files /dev/null and b/docs/.gitbook/assets/screenshot download season.png differ diff --git a/docs/.gitbook/assets/screenshot login.png b/docs/.gitbook/assets/screenshot login.png new file mode 100644 index 0000000..0c8956b Binary files /dev/null and b/docs/.gitbook/assets/screenshot login.png differ diff --git a/docs/.gitbook/assets/screenshot request season.png b/docs/.gitbook/assets/screenshot request season.png new file mode 100644 index 0000000..bfb08a2 Binary files /dev/null and b/docs/.gitbook/assets/screenshot request season.png differ diff --git a/docs/.gitbook/assets/screenshot settings.png b/docs/.gitbook/assets/screenshot settings.png new file mode 100644 index 0000000..0991813 Binary files /dev/null and b/docs/.gitbook/assets/screenshot settings.png differ diff --git a/docs/.gitbook/assets/screenshot tv dashboard.png b/docs/.gitbook/assets/screenshot tv dashboard.png new file mode 100644 index 0000000..c80eb3e Binary files /dev/null and b/docs/.gitbook/assets/screenshot tv dashboard.png differ diff --git a/docs/.gitbook/assets/screenshot tv torrents.png b/docs/.gitbook/assets/screenshot tv torrents.png new file mode 100644 index 0000000..2a6b944 Binary files /dev/null and b/docs/.gitbook/assets/screenshot tv torrents.png differ diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 0000000..3ee4d48 --- /dev/null +++ b/docs/README.md @@ -0,0 +1,7 @@ +# API Reference + +!!! info + Media Manager's backend is built with FastAPI, which automatically generates interactive API documentation. + +* Swagger UI (typically available at `http://localhost:8000/docs`) +* ReDoc (typically available at `http://localhost:8000/redoc`) diff --git a/docs/SUMMARY.md b/docs/SUMMARY.md new file mode 100644 index 0000000..64d8d2a --- /dev/null +++ b/docs/SUMMARY.md @@ -0,0 +1,30 @@ +# Table of contents + +* [API Reference](README.md) +* [Importing existing media](importing-existing-media.md) +* [index](index.md) +* [Screenshots](screenshots.md) +* [Troubleshooting](troubleshooting.md) +* [advanced-features](advanced-features/README.md) + * [Custom port](advanced-features/custom-port.md) + * [Disable startup ascii art](advanced-features/disable-startup-ascii-art.md) + * [Follow symlinks in frontend files](advanced-features/follow-symlinks-in-frontend-files.md) + * [Metadata Provider Configuration](advanced-features/metadata-provider-configuration.md) + * [qBittorrent Category](advanced-features/qbittorrent-category.md) + * [URL Prefix](advanced-features/url-prefix.md) +* [Configuration](configuration/README.md) + * [Authentication](configuration/authentication.md) + * [Backend](configuration/backend.md) + * [Custom Libraries](configuration/custom-libraries.md) + * [Database](configuration/database.md) + * [Download Clients](configuration/download-clients.md) + * [Indexers](configuration/indexers.md) + * [Logging](configuration/logging.md) + * [Notifications](configuration/notifications.md) + * [Scoring Rulesets](configuration/scoring-rulesets.md) +* [contributing-to-mediamanager](contributing-to-mediamanager/README.md) + * [Developer Guide](contributing-to-mediamanager/developer-guide.md) + * [Documentation](contributing-to-mediamanager/documentation.md) +* [Installation Guide](installation/README.md) + * [Docker Compose](installation/docker.md) + * [Nix Flakes](installation/flakes.md) diff --git a/docs/advanced-features/README.md b/docs/advanced-features/README.md new file mode 100644 index 0000000..8ab3d82 --- /dev/null +++ b/docs/advanced-features/README.md @@ -0,0 +1,9 @@ +--- +description: >- + The features in this section are not required to run MediaManager and serve + their purpose in very specific environments, but they can enhance your + experience and provide additional functionality. +--- + +# advanced-features + diff --git a/docs/configuration/authentication.md b/docs/configuration/authentication.md index 89cabbf..6385fef 100644 --- a/docs/configuration/authentication.md +++ b/docs/configuration/authentication.md @@ -22,17 +22,13 @@ All authentication settings are configured in the `[auth]` section of your `conf * `registration_enabled`\ Allows new users to sign up for an account. Default is `false`. -!!! info - To use email password resets, you must also configure SMTP settings in the `[notifications.smtp_config]` section. +!!! info To use email password resets, you must also configure SMTP settings in the `[notifications.smtp_config]` section. -!!! info - When `registration_enabled` is `false`, the sign-up page is hidden, `/auth/register` returns 403, and OIDC rejects unknown users (existing users keep working). The bootstrap admin (see `admin_emails`) is unaffected. +!!! info When `registration_enabled` is `false`, the sign-up page is hidden, `/auth/register` returns 403, and OIDC rejects unknown users (existing users keep working). The bootstrap admin (see `admin_emails`) is unaffected. -!!! tip "Adding users when registration is disabled" - Administrators can add users at any time from the **Settings → Users** page via the "Add User" button. For OIDC-only users, leave the password field blank — a random password is generated and the user is matched to their OIDC account by email on first sign-in. +!!! tip "Adding users when registration is disabled" Administrators can add users at any time from the **Settings → Users** page via the "Add User" button. For OIDC-only users, leave the password field blank — a random password is generated and the user is matched to their OIDC account by email on first sign-in. -!!! info - When setting up MediaManager for the first time, you should add your email to `admin_emails` in the `[auth]` config section. MediaManager will then use this email instead of the default admin email. Your account will automatically be created as an admin account, allowing you to manage other users, media and settings. +!!! info When setting up MediaManager for the first time, you should add your email to `admin_emails` in the `[auth]` config section. MediaManager will then use this email instead of the default admin email. Your account will automatically be created as an admin account, allowing you to manage other users, media and settings. ## OpenID Connect Settings (`[auth.openid_connect]`) @@ -59,20 +55,19 @@ The OpenID server will likely require a redirect URI. This URL will usually look {MEDIAMANAGER_URL}/api/v1/auth/oauth/callback ``` -!!! warning - It is very important that you set the correct callback URI, otherwise it won't work! +!!! warning It is very important that you set the correct callback URI, otherwise it won't work! #### Authentik Example Here is an example configuration for the OpenID Connect provider for Authentik. -![authentik-redirect-url-example](<../assets/assets/authentik redirect url example.png>) +![authentik-redirect-url-example](<../.gitbook/assets/authentik redirect url example.png>) ## Example Configuration Here's a complete example of the authentication section in your `config.toml`: -```toml title="config.toml" +```toml [auth] token_secret = "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0u1v2w3x4y5z6" session_lifetime = 604800 # 1 week @@ -87,4 +82,3 @@ client_secret = "your-secret-key-here" configuration_endpoint = "https://auth.example.com/.well-known/openid-configuration" name = "Authentik" ``` - diff --git a/docs/contributing-to-mediamanager/README.md b/docs/contributing-to-mediamanager/README.md new file mode 100644 index 0000000..904014a --- /dev/null +++ b/docs/contributing-to-mediamanager/README.md @@ -0,0 +1,2 @@ +# contributing-to-mediamanager + diff --git a/docs/screenshots.md b/docs/screenshots.md index b7f2de3..fce7f49 100644 --- a/docs/screenshots.md +++ b/docs/screenshots.md @@ -1,6 +1,5 @@ # Screenshots -!!! info - MediaManager also supports darkmode! +!!! info MediaManager also supports darkmode! -![screenshot-dashboard.png]() ![screenshot-tv-dashboard.png]() ![screenshot-download-season.png]() ![screenshot-request-season.png]() ![screenshot-tv-torrents.png]() ![screenshot-settings.png]() ![screenshot-login.png]() +![screenshot-dashboard.png](<.gitbook/assets/screenshot dashboard.png>) ![screenshot-tv-dashboard.png](<.gitbook/assets/screenshot tv dashboard.png>) ![screenshot-download-season.png](<.gitbook/assets/screenshot download season.png>) ![screenshot-request-season.png](<.gitbook/assets/screenshot request season.png>) ![screenshot-tv-torrents.png](<.gitbook/assets/screenshot tv torrents.png>) ![screenshot-settings.png](<.gitbook/assets/screenshot settings.png>) ![screenshot-login.png](<.gitbook/assets/screenshot login.png>) diff --git a/docs/troubleshooting.md b/docs/troubleshooting.md index 0dbc886..25065ae 100644 --- a/docs/troubleshooting.md +++ b/docs/troubleshooting.md @@ -1,13 +1,12 @@ # Troubleshooting -!!! info - Always check the container and browser logs for more specific error messages +!!! info Always check the container and browser logs for more specific error messages
Authentication Issues -#### I can't log in with OAuth/OIDC? +**I can't log in with OAuth/OIDC?** Verify provider configurationVerify your OAuth provider's configuration. See the OAuth documentationCheck callback URICheck if the callback URI you set in your OIDC providers settings is correct. See the callback URI documentationCheck frontend URLCheck the frontend url in your config file. It should match the URL you use to access MediaManager. @@ -35,7 +34,7 @@ The reason is that hard linking only works within the same filesystem. If your d Torrent Search Issues -#### I get no search results for torrents? +**I get no search results for torrents?** Switch to advanced tabTry switching to the advanced tab when searching for torrents.Increase timeout for slow indexersIf you use "slow" indexers, try increasing the timeout threshold.Check logsIf you still don't get any search results, check the logs, they will provide more information on what is going wrong. @@ -56,12 +55,11 @@ Switch to advanced tabTry switching to the advanced tab when searching for torre * If you get a 401 or 403 error when pulling the image from GHCR, this is not a permission issue with the repository/image. It errors because your Docker client is misconfigured. * This is not a MediaManager issue per se, so please don't open an issue about this on the MediaManager GitHub repo. -#### Possible Fixes: +**Possible Fixes:** * [Unable to pull image from GitHub Container Registry (Stack Overflow)](https://stackoverflow.com/questions/74656167/unable-to-pull-image-from-github-container-registry-ghcr) * [Try pulling the image from Quay.io](installation/docker.md#docker-images)
-!!! info - If it still doesn't work, [please open an Issue.](https://github.com/maxdorninger/MediaManager/issues) It is possible that a bug is causing the issue. +!!! info If it still doesn't work, [please open an Issue.](https://github.com/maxdorninger/MediaManager/issues) It is possible that a bug is causing the issue.