feat(docs): migrate documentation site into monorepo (#5912)

This commit is contained in:
Thomas authored and GitHub committed 2026-06-11 18:48:39 +02:00
1 parent 3e464a76f2
commit 9e421c67bd
605 files changed
+26764 -219

No files matched your search

@@ -0,0 +1,43 @@
---
title: 'Audio Stats'
description: 'Displays library statistics from Navidrome or Audiobookshelf, adapting its display based on the linked integration.'
hide_title: true
---
import { WidgetHeader } from '@site/src/components/widgets/header';
import { AddingWidget } from '@site/src/components/widgets/adding';
import { WidgetConfig } from '@site/src/components/widgets/configuration';
import { WidgetIntegrations } from '@site/src/components/widgets/integrations';
import { audioStatsWidget } from '.';
import { navidromeIntegration } from '@site/docs/integrations/navidrome';
import { audiobookshelfIntegration } from '@site/docs/integrations/audiobookshelf';
<WidgetHeader
widget={audioStatsWidget}
categories={['Media']}
/>
This widget adapts its display based on the linked integration:
- **Navidrome**: Shows artist, album, and song counts, plus a now playing section with active streams
- **Audiobookshelf**: Shows library count, audiobook/podcast totals, listening time, and active sessions
Only options relevant to your linked integration are shown in the configuration panel.
### Supported Integrations
<WidgetIntegrations items={[{
integration: navidromeIntegration,
note: "Displays music library stats and now playing"
}, {
integration: audiobookshelfIntegration,
note: "Displays audiobook/podcast library stats and listening time"
}]} />
### Adding the widget
<AddingWidget />
### Configuration
<WidgetConfig configuration={audioStatsWidget.configuration} />
@@ -0,0 +1,86 @@
import { WidgetDefinition } from "@site/src/types";
import { IconHeadphones } from "@tabler/icons-react";
export const audioStatsWidget: WidgetDefinition = {
icon: IconHeadphones,
name: "Audio Stats",
description:
"Displays library statistics from Navidrome or Audiobookshelf, adapting its display based on the linked integration.",
path: "../../widgets/audio-stats",
configuration: {
items: [
{
name: "Show artists",
description: "Displays the artist count (Navidrome only)",
values: { type: "boolean" },
defaultValue: "yes",
},
{
name: "Show albums",
description: "Displays the album count (Navidrome only)",
values: { type: "boolean" },
defaultValue: "yes",
},
{
name: "Show songs",
description: "Displays the song count (Navidrome only)",
values: { type: "boolean" },
defaultValue: "yes",
},
{
name: "Show now playing",
description: "Displays currently playing tracks (Navidrome only)",
values: { type: "boolean" },
defaultValue: "yes",
},
{
name: "Show now playing list",
description: "Displays a detailed list of now playing tracks (Navidrome only)",
values: { type: "boolean" },
defaultValue: "yes",
},
{
name: "Max now playing items",
description: "Maximum number of now playing tracks to display (Navidrome only)",
values: "Number (1-5)",
defaultValue: "3",
},
{
name: "Show library count",
description: "Displays the number of libraries (Audiobookshelf only)",
values: { type: "boolean" },
defaultValue: "yes",
},
{
name: "Show audiobooks",
description: "Displays the total audiobook count (Audiobookshelf only)",
values: { type: "boolean" },
defaultValue: "yes",
},
{
name: "Show podcasts",
description: "Displays the total podcast count (Audiobookshelf only)",
values: { type: "boolean" },
defaultValue: "yes",
},
{
name: "Show listening time",
description: "Displays total listening time (Audiobookshelf only)",
values: { type: "boolean" },
defaultValue: "yes",
},
{
name: "Show active sessions",
description: "Displays the number of active listening sessions (Audiobookshelf only)",
values: { type: "boolean" },
defaultValue: "yes",
},
{
name: "Compact mode",
description: "Uses a more compact layout with smaller icons and tighter spacing",
values: { type: "boolean" },
defaultValue: "no",
},
],
},
};