nos-cli

Crates.ionos-cli
lib.rsnos-cli
version0.1.0
created_at2025-08-04 22:28:24.408847+00
updated_at2025-08-04 22:28:24.408847+00
descriptionA terminal-based RSS feed reader for NOS.nl news
homepagehttps://github.com/thijmen-nos/nos-cli
repositoryhttps://github.com/thijmen-nos/nos-cli
max_upload_size
id1781283
size227,622
Thijmen Boot (thijmenboot)

documentation

README

NOS CLI

A modern, fast terminal-based RSS feed reader specifically designed for NOS.nl (Nederlandse Omroep Stichting) news feeds.

✨ Features

  • 📰 Multiple Feed Categories: Access news, sports, and special programs from NOS
  • 🖼️ Terminal Image Support: View article images directly in your terminal
  • Fast & Responsive: Smooth navigation with vi-style keybindings
  • 🎨 Beautiful UI: Clean interface with official NOS brand colors
  • 📱 Responsive Layout: Adapts to different terminal sizes
  • 🔍 Article Preview: Quick preview text in list view
  • 📖 Full Article View: Read complete articles with proper formatting

🚀 Installation

From Source

# Clone the repository
git clone https://github.com/thijmen-nos/nos-cli.git
cd nos-cli

# Build and install
cargo install --path .

Prerequisites

  • Rust 1.70 or later
  • A terminal that supports 256 colors (most modern terminals)
  • For optimal image display: A terminal with image protocol support (iTerm2, Kitty, etc.)

📖 Usage

Start the application:

nos-cli

Navigation

The application uses intuitive keybindings:

Feed Selection Mode

  • ↑/↓ or j/k: Navigate between feeds
  • Enter/l/→: Select a feed
  • q/Esc: Quit application

Article List Mode

  • ↑/↓ or j/k: Navigate between articles
  • Enter/l/→: Open article details
  • h/←/Backspace: Return to feed selection
  • q/Esc: Quit application

Article Detail Mode

  • ↑/↓ or j/k: Scroll article content
  • J/K: Jump to next/previous article
  • h/←/Backspace: Return to article list
  • q/Esc: Quit application

📺 Available Feeds

News Feeds

  • NOS Nieuws Algemeen (General News)
  • NOS Nieuws Binnenland (Domestic News)
  • NOS Nieuws Buitenland (International News)
  • NOS Nieuws Politiek (Politics)
  • NOS Nieuws Economie (Economics)
  • NOS Nieuws Opmerkelijk (Remarkable News)
  • NOS Nieuws Koningshuis (Royal House)
  • NOS Nieuws Cultuur en media (Culture & Media)
  • NOS Nieuws Tech (Technology)

Sports Feeds

  • NOS Sport Algemeen (General Sports)
  • NOS Sport Voetbal (Football)
  • NOS Sport Wielrennen (Cycling)
  • NOS Sport Schaatsen (Ice Skating)
  • NOS Sport Tennis
  • NOS Sport Formule 1 (Formula 1)

Special Programs

  • Nieuwsuur
  • NOS op 3
  • NOS Jeugdjournaal (Youth News)

🛠️ Development

Building

# Debug build
cargo build

# Release build
cargo build --release

Running

# Run with cargo
cargo run

# Run with debug logging
RUST_LOG=debug cargo run

Testing

cargo test

🤝 Contributing

We welcome contributions! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

Development Guidelines

  1. Follow standard Rust conventions and formatting (cargo fmt)
  2. Ensure all tests pass (cargo test)
  3. Add documentation for new features
  4. Update README if needed

📄 License

This project is licensed under either of

at your option.

🙏 Acknowledgments

  • NOS.nl for providing the RSS feeds
  • Ratatui for the excellent TUI framework
  • The Rust community for the amazing ecosystem

📞 Support

If you encounter any issues or have questions, please open an issue on GitHub.


Made with ❤️ for the Dutch news community

Commit count: 0

cargo fmt