Skip to content
Merged

Dev #37

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
6dc640c
simple docs
appujet Mar 9, 2026
878b7c7
ci: Add GitHub Actions workflow to deploy VitePress documentation to …
appujet Mar 9, 2026
52957e2
chore: remove redundant comments from deploy-docs workflow.
appujet Mar 9, 2026
a77dd88
docs: Update VitePress base path to `/Rustalink/` and remove logo com…
appujet Mar 9, 2026
750a872
Removed `actions/configure-pages` from the deploy workflow and added …
appujet Mar 9, 2026
f885043
fix: Update documentation build artifact path in workflow and remove …
appujet Mar 9, 2026
cf85166
refactor: remove 'src' directory from VitePress configuration and Git…
appujet Mar 9, 2026
1e9d924
feat(pterodactyl): add Pterodactyl egg and documentation for deployment
notdeltaxd Mar 9, 2026
50c7ef0
build(pterodactyl-egg): update installation script to fetch config fr…
notdeltaxd Mar 9, 2026
2b9d092
feat: Refactor voice gateway session initialization to align with V8 …
appujet Mar 9, 2026
6efe389
feat(gateway/session): persist RTP state for voice connections
appujet Mar 9, 2026
1bca17f
feat: enhance DAVE encryption session management with user tracking a…
appujet Mar 10, 2026
48e4f24
docs: Remove extensive module-level and function documentation from t…
appujet Mar 10, 2026
e582907
refactor: reduce audio client read timeout, add chunk claiming debug …
appujet Mar 10, 2026
f8b0e5c
fix: Reduce audio client read timeout from 12 to 8 seconds.
appujet Mar 10, 2026
4f5bba1
feat: Implement retry logic for partial chunk fetches in segmented au…
appujet Mar 10, 2026
629363d
docs: Update Pterodactyl egg download link in the guide.
appujet Mar 10, 2026
d840993
docs: Provide Pterodactyl egg configuration directly in guide and upd…
appujet Mar 10, 2026
7a9c83c
refactor(sources): Simplify track decoding, check stream early
notdeltaxd Mar 10, 2026
ab57156
style: Clean up whitespace and simplify minor expressions
notdeltaxd Mar 10, 2026
50d0030
feat(mirrors): implement scored mirror resolution pipeline
bre4d777 Mar 10, 2026
38783ff
config(config.example): fix typography
bre4d777 Mar 10, 2026
666e127
feat(mirrors): extract resolve_first and resolve_scored into separate…
bre4d777 Mar 10, 2026
b1c1139
fix(config): revert to defaults
bre4d777 Mar 10, 2026
015e9e2
improve(mirrors): prioritize ISRC providers, remove unreachable block
bre4d777 Mar 10, 2026
e2fc6e9
feat: Set initial volume for newly created track handles.
appujet Mar 10, 2026
ec6f8b5
feat(mirrors): improve fallback logic and ISRC selection
notdeltaxd Mar 10, 2026
466328b
Merge pull request #38 from bre4d777/dev
appujet Mar 10, 2026
e41f3c2
docs: replace detailed introduction with WIP placeholder
appujet Mar 10, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
docs/*
57 changes: 57 additions & 0 deletions .github/workflows/deploy-docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
name: Deploy VitePress site to Pages

on:
push:
paths:
- "docs/**"
- ".github/workflows/deploy-docs.yml"

workflow_dispatch:

permissions:
contents: read
pages: write
id-token: write

concurrency:
group: pages
cancel-in-progress: false

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Setup Bun
uses: oven-sh/setup-bun@v1
with:
bun-version: latest

- name: Install dependencies
working-directory: docs
run: bun install

- name: Build with VitePress
working-directory: docs
run: bun run docs:build

- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: docs/.vitepress/dist

deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
needs: build
runs-on: ubuntu-latest
name: Deploy
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,9 @@ extra/*
config.toml
local.config.toml
.env

# VitePress Docs
docs/node_modules/
docs/.vitepress/dist/
docs/.vitepress/cache/

26 changes: 26 additions & 0 deletions config.example.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,32 @@ tape = { tape_stop = true, tape_stop_duration_ms = 500, curve = "sinusoidal" } #
# List of mirror provider patterns. %ISRC% or %QUERY%
providers = ["ytsearch:%ISRC%", "ytsearch:%QUERY%", "scsearch:%QUERY%"]

[player.mirrors.best_match]
# Enable weighted scoring to find the best-matching candidate.
# When false, the first resolvable result from each provider is accepted immediately.
# Default: true
scoring = true

# Prefixes treated as throttled (rate-sensitive) — tried sequentially after all parallel free providers.
# Default: ["ytmsearch:", "ytsearch:"]
throttled_prefixes = ["ytmsearch:", "ytsearch:"]

# Confidence thresholds (only used when scoring = true). All values in [0.0, 1.0].
# immediate_use — accept instantly, cancel remaining parallel searches.
# high_confidence — try up to 2 candidates instead of 3.
# min_similarity — discard anything below this score entirely.
immediate_use = 0.88
high_confidence = 0.75
min_similarity = 0.50

# Scoring weights (should sum to 1.0).
weight_title = 0.50
weight_artist = 0.30
weight_duration = 0.20

# Milliseconds within which two track durations are considered identical.
duration_tolerance_ms = 3000

[logging]
level = "info" # trace | debug | info | warn | error | off
filters = "rustalink=debug" # e.g. "rustalink=debug,davey=off"
Expand Down
3 changes: 3 additions & 0 deletions docs/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
node_modules/
.vitepress/dist
.vitepress/cache
35 changes: 35 additions & 0 deletions docs/.vitepress/config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
import { defineConfig } from 'vitepress'

export default defineConfig({
title: "Rustalink",
description: "High-performance Rust audio server documentation",
base: '/Rustalink/',
cleanUrls: true,
themeConfig: {
logo: '/logo.svg',
nav: [
{ text: 'Docs', link: '/' }
],
sidebar: [
{
text: 'Guide',
items: [
{ text: 'Introduction', link: '/' },
{ text: 'Installation', link: '/guide/installation' },
{ text: 'Docker', link: '/guide/docker' },
{ text: 'Configuration', link: '/guide/configuration' },
{ text: 'Architecture', link: '/guide/architecture' },
{ text: 'Filters', link: '/guide/filters' },
{ text: 'REST API', link: '/guide/api' },
{ text: 'Pterodactyl', link: '/guide/pterodactyl' }
]
}
],
socialLinks: [
{ icon: 'github', link: 'https://github.com/bongodevs/Rustalink' }
],
search: {
provider: 'local'
}
}
})
9 changes: 9 additions & 0 deletions docs/.vitepress/theme/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import DefaultTheme from 'vitepress/theme'
import './style.css'

export default {
extends: DefaultTheme,
enhanceApp({ app, router, siteData }) {
// Custom enhancements can go here
}
}
31 changes: 31 additions & 0 deletions docs/.vitepress/theme/style.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
:root {
--vp-c-brand-1: #FF6A00;
--vp-c-brand-2: #D84315;
--vp-c-brand-3: #FF8A33;
--vp-home-hero-name-color: transparent;
--vp-home-hero-name-background: -webkit-linear-gradient(120deg, #FF6A00 30%, #D84315);
}

.dark {
--vp-c-bg: #0f0f0f;
--vp-c-bg-alt: #1a1a1a;
--vp-c-bg-elv: #1a1a1a;
--vp-c-bg-soft: #1a1a1a;

--vp-c-text-1: #ffffff;
--vp-c-text-2: rgba(255, 255, 255, 0.7);

--vp-button-brand-bg: #FF6A00;
--vp-button-brand-hover-bg: #D84315;
--vp-button-brand-active-bg: #D84315;
}

html {
color-scheme: dark !important;
}

/* Force dark mode */
body {
background-color: var(--vp-c-bg);
color: var(--vp-c-text-1);
}
Loading