How greepar/bililive works
BiliLive is an Avalonia client for Bilibili live-stream tasks, with account login and scheduled streaming/automation as its central workflow. The tree also shows live-room controls, award and sign services, and alternate-account management. Sampled code confirms QR/cookie login, scheduled-task behavior, live-service API operations, configuration persistence, and theme generation; wiring among unsampled pages and services is omitted where it cannot be established.
Main entry points: AutoServiceViewModel.cs Auto service · AltService.cs Alternate service · App.axaml.cs Application setup · LoginService.cs Login service
Components 20
Desktop experience
- Main view model
BiliLive/Views/MainWindow/MainViewModel.cs - Home page
BiliLive/Views/MainWindow/Pages/HomePage/HomeViewModel.cs - Accounts
BiliLive/Views/MainWindow/Controls/AccountsViewModel.cs
Live automation
- Auto service
BiliLive/Views/MainWindow/Pages/AutoService/AutoServiceViewModel.cs - Alternate login
BiliLive/Views/MainWindow/Pages/AutoService/Components/AltManagerViewModel.cs - Stream process
BiliLive.Core/Services/FfmpegWrapper.cs
Bilibili services
- Bilibili interface
BiliLive.Core/Interface/IBiliService.cs - Alternate interface
BiliLive.Core/Interface/IAltService.cs - Alternate service
BiliLive.Core/Services/BiliService/AltService.cs - Login service
BiliLive.Core/Services/BiliService/LoginService.cs - Live service
BiliLive.Core/Services/BiliService/LiveService.cs - Award service
BiliLive.Core/Services/BiliService/AwardService.cs - Sign service
BiliLive.Core/Services/BiliService/SignService.cs
App and theme
- Application setup
BiliLive/App.axaml.cs - Config manager
BiliLive/Utils/ConfigManager.cs - Alternate settings
BiliLive/Models/AltSettings.cs - Theme manager
Material3.UI/Theme/ThemeManager.cs - M3 color scheme
Material3.UI/Theme/Color/M3Scheme.cs
Other components
- User
- Bilibili APIs
Connections 16
- User → Main view model: uses
- Application setup → Main view model: resolves
- Application setup → Config manager: flushes on exit
- Alternate login → Alternate service: requests login
- Alternate service → Alternate interface: implements
- Alternate service → Login service: uses login
- Login service → Bilibili APIs: checks login
- Alternate service → Bilibili APIs: requests QR
- Auto service → Bilibili interface: calls tasks
- Auto service → Stream process: interrupts stream
- Auto service → Alternate settings: manages accounts
- Auto service → Config manager: persists settings
- Live service → Bilibili APIs: reads and updates
- Award service → Bilibili APIs: requests awards
- Sign service → Bilibili APIs: signs requests
- Theme manager → M3 color scheme: generates palettes