MultiGlass TUI is a terminal-based interface for analyzing BGP (Border Gateway Protocol) peer data. This tool allows network administrators and enthusiasts to view, query, and navigate through peer information in a visually appealing and efficient manner.
The interface is built using the powerful tview
and tcell
libraries, providing a responsive and interactive TUI experience.
- Logo and Shortcuts Display: A visually distinct top bar showing the application logo and useful shortcuts.
- Peer List Navigation: A scrollable list of peers with support for keyboard navigation.
- Detailed Peer Information: Display detailed peer data, including AS-PATH and sequence information.
- Search and Query Modals: Easily search for peers or initiate new queries using modal dialogs.
- Keyboard Shortcuts:
[←]
and[→]
to navigate between peers.[Tab]
to cycle focus between components.[f]
to search for a peer.[n]
to create a new query.[q]
to quit the application.
-
Clone the Repository:
git clone https://github.com/drksbr/lg2.git cd multiglass-tui
-
Install Dependencies: Ensure you have Go installed. Then, run:
go mod tidy
-
Build and Run:
go run main.go
Run the application to view the main interface:
go run main.go
- Select a Peer: Use
[↓]
and[↑]
to scroll through the list of peers. - Switch Focus: Press
[Tab]
to toggle focus between the peer list and content pane. - Navigate Between Peers: Use
[←]
and[→]
to cycle through peer details. - Quit: Press
[q]
to exit the application.
- Search for a Peer: Press
[f]
to open a search modal. Enter the desired peer name and press[Enter]
to filter the list. - Create a New Query: Press
[n]
to open a query modal. Enter the query details and press[Enter]
.
Contributions are welcome! Please follow these steps:
- Fork the repository.
- Create a new branch for your feature or bugfix:
git checkout -b feature-name
- Commit your changes:
git commit -m "Add feature or fix description"
- Push your branch:
git push origin feature-name
- Open a pull request.
This project is licensed under the MIT License. See the LICENSE
file for details.
- tview: A powerful library for building terminal user interfaces in Go.
- tcell: A library for handling terminal I/O.
For questions or support, feel free to reach out:
- Email: [email protected]
- GitHub: drksbr