A lightweight Rust terminal music player for local libraries, with gapless playback, queues, playlists and vim-style keys.
apatrushev/rdn
A terminal file manager in Rust and ratatui, styled after the classic DOS Dos Navigator with two panels and F-key shortcuts.
Open-source alternative to:Norton Commander
- Stars
- 83
- Forks
- 1
- Open issues
- 0
- Last commit
- 7 months ago
What is it?
rdn is a terminal file manager written in Rust with ratatui, visually modeled on Dos Navigator, the DOS-era orthodox file manager from RIT Research Labs. It uses a two-panel layout with a 3-column Brief mode, a dark gray theme with a cyan cursor bar, and double-line borders marking the active panel.
The core workflow follows the classic F-key scheme: copy (F5), move (F6), make directory (F7), delete (F8), sort (F9), and a built-in text and hex viewer (F3). Files can be selected with Insert, pattern-based +/- selection, or inverted with *, and incremental quick search is available on Alt+F7. Deleted files go to the system trash on macOS and Linux.
The project is a small hobby effort, described by its author as a quick vibe-coded rewrite of the original Dos Navigator source. It includes a built-in Tetris game carried over from the original, and is installable via cargo install from the Git repository.
Key features
- 01Two-panel orthodox layout with a 3-column Brief mode
- 02Copy, move, mkdir and delete via F5–F8 keys
- 03Built-in text and hex file viewer on F3
- 04Incremental quick search, pattern selection and sorting by name, size, date or extension
- 05Deleted files go to the system trash on macOS and Linux
Use cases
- Navigating and managing files from a terminal with keyboard shortcuts familiar from Norton Commander or DOS Navigator
- Nostalgic use for those who want a retro-styled DOS-look file manager on modern systems
- Quick file browsing over SSH sessions without a graphical desktop
Quick start
- 1
Install from the Git repository with Cargo
cargo install --git https://github.com/apatrushev/rdn - 2
Run rdn from any directory
rdn
Things to know
- The README calls it a one-hour vibe-coding project and asks not to take it seriously.
- Trash support is only available on macOS and Linux.
- The original Dos Navigator code it draws on carries its own license with attribution conditions.
Topics
FAQ
- What is rdn?
- A terminal file manager in Rust and ratatui, styled after the classic DOS Dos Navigator with two panels and F-key shortcuts. rdn is a terminal file manager written in Rust with ratatui, visually modeled on Dos Navigator, the DOS-era orthodox file manager from RIT Research Labs. It uses a two-panel layout with a 3-column Brief mode, a dark gray theme with a cyan cursor bar, and double-line borders marking the active panel.
- Is rdn free to use? What license does it have?
- rdn is open source under the MIT license. Check the license terms before using it in commercial products.
- Is rdn still maintained?
- No commits for 6+ months. The last commit to rdn was on Mar 17, 2026.
- What can I use rdn for?
- Navigating and managing files from a terminal with keyboard shortcuts familiar from Norton Commander or DOS Navigator Nostalgic use for those who want a retro-styled DOS-look file manager on modern systems Quick file browsing over SSH sessions without a graphical desktop
- How do I install rdn?
- Install from the Git repository with Cargo: cargo install --git https://github.com/apatrushev/rdn Run rdn from any directory: rdn
- Where can I get rdn?
- The source code and installation instructions are on GitHub: https://github.com/apatrushev/rdn
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A keyboard-driven, three-pane terminal file browser written in Rust, configurable with Lua and rich external previews.
A terminal UI for managing Bluetooth devices on Linux, built on BlueZ.
A terminal UI that renders a git commit graph as images, similar to git log --graph --all, for browsing repository history.
A terminal UI for rsync that manages reusable transfer profiles, previews changes as a dry-run diff, and shows live progress, including over SSH.
A terminal weather app written in Rust that shows real-time conditions as ASCII animations like rain, snow and thunderstorms.