Expand description
§SomaFM Player
A terminal-based music player for SomaFM internet radio stations.
This crate provides a complete TUI application for streaming SomaFM radio stations with features like volume control, channel selection, and persistent configuration.
§Modules
config
- Configuration management and persistent settingsui
- Terminal user interface components and renderingaudio
- Audio playback engine and stream handlingapi
- SomaFM API integration and playlist parsingmodels
- Data structures and type definitionslogging
- Logging configuration and managementerrors
- Error types and handling utilities
§Example
use soma_player::{
config::AppConfig,
logging::{LogConfig, init_logging},
};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
// Initialize logging
let _guard = init_logging(LogConfig::default())?;
// Load configuration
let config = AppConfig::load()?;
// Start the application
// ... (main application logic)
Ok(())
}