From bcd5313a1e648abe21817c659cb1c8d9853fc042 Mon Sep 17 00:00:00 2001 From: Jatin K Malik Date: Thu, 11 Jun 2026 14:13:55 -0700 Subject: [PATCH] docs(web): refresh beta feature documentation (#470) * docs(web): add beta feature documentation pages * fix(web): polish responsive documentation layout * fix(web): restore feature card column layout * fix(web): refine homepage beta content * fix(web): soften hero wave gradient * fix(web): tune hero gradient animation * Add --- web/public/sitemap.xml | 36 +- web/src/app/__tests__/seo-assets.test.ts | 8 +- web/src/app/advanced-settings/page.tsx | 244 +++ web/src/app/changelog/page.tsx | 72 +- web/src/app/compare/page.tsx | 190 ++- web/src/app/desktop-reliability/page.tsx | 245 +++ web/src/app/faq/page.tsx | 47 +- web/src/app/layout.tsx | 19 +- web/src/app/page.tsx | 1469 ++++++++++++----- web/src/app/remote-api/page.tsx | 280 ++++ web/src/app/troubleshooting/page.tsx | 167 +- web/src/app/voice-activity-detection/page.tsx | 235 +++ web/src/app/wayland/page.tsx | 85 +- web/src/components/seo-subpage-shell.tsx | 87 +- 14 files changed, 2562 insertions(+), 622 deletions(-) create mode 100644 web/src/app/advanced-settings/page.tsx create mode 100644 web/src/app/desktop-reliability/page.tsx create mode 100644 web/src/app/remote-api/page.tsx create mode 100644 web/src/app/voice-activity-detection/page.tsx diff --git a/web/public/sitemap.xml b/web/public/sitemap.xml index f69c849..48e5dde 100644 --- a/web/public/sitemap.xml +++ b/web/public/sitemap.xml @@ -2,7 +2,7 @@ https://vocalinux.com/ - 2026-02-22 + 2026-06-11 weekly 1.0 @@ -32,19 +32,19 @@ https://vocalinux.com/compare/ - 2026-02-22 + 2026-06-11 monthly 0.8 https://vocalinux.com/changelog/ - 2026-02-22 + 2026-06-11 weekly 0.7 https://vocalinux.com/faq/ - 2026-02-22 + 2026-06-11 monthly 0.8 @@ -62,7 +62,7 @@ https://vocalinux.com/troubleshooting/ - 2026-02-22 + 2026-06-11 monthly 0.7 @@ -87,7 +87,31 @@ https://vocalinux.com/wayland/ - 2026-02-22 + 2026-06-11 + monthly + 0.8 + + + https://vocalinux.com/remote-api/ + 2026-06-11 + monthly + 0.8 + + + https://vocalinux.com/voice-activity-detection/ + 2026-06-11 + monthly + 0.8 + + + https://vocalinux.com/advanced-settings/ + 2026-06-11 + monthly + 0.8 + + + https://vocalinux.com/desktop-reliability/ + 2026-06-11 monthly 0.8 diff --git a/web/src/app/__tests__/seo-assets.test.ts b/web/src/app/__tests__/seo-assets.test.ts index 54a855b..b3160c5 100644 --- a/web/src/app/__tests__/seo-assets.test.ts +++ b/web/src/app/__tests__/seo-assets.test.ts @@ -14,7 +14,9 @@ describe("SEO Assets", () => { }); it("contains sitemap reference in robots.txt", () => { - expect(robotsContent).toContain("Sitemap: https://vocalinux.com/sitemap.xml"); + expect(robotsContent).toContain( + "Sitemap: https://vocalinux.com/sitemap.xml", + ); }); it("blocks crawler access to technical paths", () => { @@ -31,6 +33,10 @@ describe("SEO Assets", () => { "https://vocalinux.com/install/fedora/", "https://vocalinux.com/install/arch/", "https://vocalinux.com/compare/", + "https://vocalinux.com/remote-api/", + "https://vocalinux.com/voice-activity-detection/", + "https://vocalinux.com/advanced-settings/", + "https://vocalinux.com/desktop-reliability/", ]; expectedUrls.forEach((url) => { diff --git a/web/src/app/advanced-settings/page.tsx b/web/src/app/advanced-settings/page.tsx new file mode 100644 index 0000000..9e87024 --- /dev/null +++ b/web/src/app/advanced-settings/page.tsx @@ -0,0 +1,244 @@ +import Link from "next/link"; +import { type Metadata } from "next"; +import { + AlertTriangle, + CheckCircle2, + ChevronRight, + Cpu, + RotateCcw, + Server, + Settings, + SlidersHorizontal, + Sparkles, +} from "lucide-react"; +import { SeoSubpageShell } from "@/components/seo-subpage-shell"; +import { absoluteUrl, buildPageMetadata } from "@/lib/seo"; + +const whisperControls = [ + { + name: "No Timestamps", + detail: + "Disables timestamp token generation to reduce timestamp-related hallucinations.", + }, + { + name: "No Context", + detail: + "Stops whisper.cpp from conditioning on previous text when past context causes error loops.", + }, + { + name: "Temperature", + detail: + "Controls decoding randomness. The default 0.0 keeps dictation deterministic.", + }, + { + name: "Temperature Increment", + detail: + "Sets fallback steps for retry behavior, or disables fallback entirely with -1.0.", + }, + { + name: "Entropy Threshold", + detail: "Helps detect repetition loops during decoding.", + }, + { + name: "Logprob Threshold", + detail: "Triggers fallback when average token confidence is too low.", + }, + { + name: "No-Speech Threshold", + detail: "Controls how strongly whisper.cpp treats audio as silence.", + }, + { + name: "Initial Prompt", + detail: + "Adds names, jargon, punctuation style, or other context to steer transcription.", + }, +]; + +const useCases = [ + "Suppress repeated phrases or timestamp artifacts in long dictation sessions.", + "Bias transcription toward project names, technical jargon, or personal vocabulary.", + "Keep whisper.cpp deterministic for notes, code comments, and messages.", + "Move Remote Server settings out of the way until power-user mode is enabled.", +]; + +export const metadata: Metadata = buildPageMetadata({ + title: "Advanced Whisper.cpp Settings for Linux Dictation", + description: + "Tune Vocalinux advanced whisper.cpp settings for anti-hallucination, decoding thresholds, initial prompts, and Remote API configuration.", + path: "/advanced-settings", + keywords: [ + "whisper.cpp advanced settings", + "whisper anti hallucination linux dictation", + "vocalinux advanced settings", + "whisper.cpp no speech threshold", + ], +}); + +export default function AdvancedSettingsPage() { + const articleJsonLd = { + "@context": "https://schema.org", + "@type": "TechArticle", + headline: "Advanced Whisper.cpp Settings for Linux Dictation", + description: + "Guide to Vocalinux advanced settings for whisper.cpp decoding, anti-hallucination controls, and Remote API configuration.", + dateModified: "2026-06-11", + author: { + "@type": "Person", + name: "Jatin K Malik", + url: "https://github.com/jatinkrmalik", + }, + publisher: { + "@type": "Organization", + name: "Vocalinux", + logo: { + "@type": "ImageObject", + url: absoluteUrl("/vocalinux.png"), + }, + }, + mainEntityOfPage: absoluteUrl("/advanced-settings"), + }; + + return ( + +