Ensure consistent error handling and improve resource cleanup across widgets and APIs.

This commit is contained in:
2026-01-01 12:10:33 +01:00
parent af5a39ef75
commit 2a66278cae
9 changed files with 90 additions and 48 deletions
+11 -5
View File
@@ -10,9 +10,10 @@ ArinDash is a customizable terminal dashboard (TUI) written in Go, powered by [`
- **Docker Monitoring**: View the status of your Docker containers.
- **HTTP Prober**: Check the availability and status codes of your favorite websites.
- **Network Device Monitoring**: Track which devices are online in your local network.
- **WiFi QR Code**: Display a QR code for easy WiFi connection sharing.
- **Wi-Fi QR Code**: Display a QR code for easy Wi-Fi connection sharing.
- **NINA Warnings**: Stay informed about emergency warnings in Germany via the NINA-Service.
- **News**: Get the latest news headlines from various sources via News API.
- **Every Day Mood**: Track your daily mood with an interactive calendar.
- **Zukitchi**: A cute animated terminal pet/sprite to keep you company.
- **Interactive TUI**: Built with `termdash` for a responsive and visually appealing terminal interface.
@@ -46,7 +47,7 @@ ArinDash uses a `config.toml` file for its settings. A template is provided as `
2. Edit `config.toml` with your specific details:
- **Pi-hole**: Set your host and API password.
- **WiFi**: Configure your SSID and password for the QR code widget.
- **Wi-Fi**: Configure your SSID and password for the QR code widget.
- **Weather**: Provide your OpenWeatherMap API key and Location ID. You can find your Location ID in the `city.list.json.gz` from [OpenWeatherMap bulk data](http://bulk.openweathermap.org/sample/).
- **NINA Warnings**: Set your `gebietsCode` for the area you want to monitor.
- **News**: Provide your News API key and preferred sources.
@@ -57,7 +58,7 @@ ArinDash uses a `config.toml` file for its settings. A template is provided as `
## Usage
To run ArinDash, simply execute:
To run ArinDash, execute:
```bash
go run main.go
@@ -65,7 +66,12 @@ go run main.go
### Controls
- **Esc / Ctrl+C**: Exit the application.
- **Left / Right Arrow Keys**: Navigate through news articles (in the News widget).
- **News Widget**:
- **Left / Right Arrow Keys**: Navigate through news articles.
- **Every Day Mood Widget**:
- **Arrow Keys**: Navigate through the calendar days and months.
- **1, 2, 3**: Assign a mood.
- **Backspace**: Clear the mood for the selected day.
## Project Structure
@@ -77,4 +83,4 @@ go run main.go
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
This project is licensed under the MIT License see the [LICENSE](LICENSE) file for details.