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(())
}