forecaster 0.1.1

A simple weather forecaster that takes all the data from https://openweathermap.org/ and displays it in a nice way.
use reqwest::Error;

mod commands;
mod utils;

use commands::current_weather::get_current_weather::get_current_weather;
use commands::set_config::update_config_value::update_config_value;

#[tokio::main]
async fn main() -> Result<(), Error> {
    let args: Vec<String> = std::env::args().skip(1).collect();

    match args.get(0) {
        None => {
            get_current_weather(&args).await.unwrap();
        }
        Some(command) => match command.as_str() {
            "current" => {
                get_current_weather(&args).await.unwrap();
            }
            "config" => match update_config_value(&args) {
                Ok(_) => {}
                Err(err) => {
                    println!("{err}");
                    return Ok(());
                }
            },
            "help" => {
                println!("Commands:");
                println!("  forecaster config api_key 1234567890   - set api key");
                println!("  forecaster config default_town Cardiff - set default town");
                println!(
                    "  forecaster current london              - get current weather for London"
                );
                println!("  forecaster current                     - get current weather for default town taken from settings");
                println!("  forecaster 4d london                   - get weather forecast for next 4 days");
                println!("  forecaster 4d                          - get weather forecast for next 4 days for default town taken from settings");
            }
            "4d" => {
                println!("Sorry development of 4days forecast is in progress");
            }
            unknown_command => {
                println!("Command \"{unknown_command}\" is not found");
                return Ok(());
            }
        },
    };

    Ok(())
}