flyradar

Crates.ioflyradar
lib.rsflyradar
version0.2.1
created_at2025-03-12 12:43:14.649422+00
updated_at2025-04-19 14:52:55.422995+00
descriptionManage your Fly.io resources in style
homepagehttps://flyradar.fly.dev
repositoryhttps://github.com/furkankly/flyradar
max_upload_size
id1589724
size543,245
Furkan Kalaycioglu (furkankly)

documentation

README

Manage your Fly.io resources in style!


Website

πŸͺ flyradar 🌟 is a terminal UI for managing and monitoring your Fly.io resources, inspired by k9s. It provides an intuitive, keyboard-driven interface to interact with your Fly.io apps, and moreβ€”all from your terminal.

Manage your Fly.io apps, VMs, volumes and secrets - all in your terminal

Quickstart

[!NOTE]

flyradar is an OSS third-party tool and is not an official Fly.io project.

[!IMPORTANT]

flyradar relies on the Fly CLI for authentication and its built-in agent for operational functionality. Make sure you have flyctl installed on your system before proceeding.

Install flyradar with cargo:

cargo install flyradar

[!NOTE]
See the other installation methods πŸ“¦

Make sure you are authenticated into fly:

fly auth login

Just run flyradar:

flyradar

Demo

Features

  • πŸ’» Interactive terminal UI for managing Fly.io resources
  • πŸ”„ Real-time monitoring of your applications and other resources
  • πŸ” Quick access to resource logs with filtering and dumping capabilities
  • 🎯 Focused on operational workflows (viewing, monitoring, deleting, logging) for existing resources
    • Creation workflows are intentionally left to the Fly CLI, as they tend to be more complex and change more frequently
    • Operational workflows have more stable interfaces and are naturally well-suited for a terminal UI

Features

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Development Guidelines

  • This project follows Conventional Commits for all commit messages (e.g., feat(logs): add dumping logs, fix(tui): fix tab completion for command input)
  • Before submitting a PR, please run:
    • cargo fmt to ensure consistent code formatting
    • cargo clippy to catch common mistakes and improve code quality
    • cargo test to verify your changes don't break existing functionality

Project Structure

This project implements parts of several components from flyctl in Rust, with a focus on maintaining equivalent functionality:

[!NOTE]

Only the necessary functionality from these components are implemented while aiming to maintain the same behavior and interfaces where possible.

This project uses a patched version of the async-nats crate to enable IPC communication with the Fly agent. You can find the fork here.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgements

  • Fly.io for their amazing platform
  • k9s for inspiration
Commit count: 26

cargo fmt