nodash is a modern terminal-based project launcher and manager for nvm node projects — fast, minimal, and built with Rust.
Easily manage and open your most-used dev projects with a slick TUI interface.
- Launch projects with a single keypress, auto-loading Node.js version managers (nvm/fnm).
- Project Management: Add current directories, store and retrieve projects efficiently.
- Node.js Version Display: Shows the Node.js version specified in
.nvmrcfiles. - Intelligent Sorting: Projects are automatically sorted by their "last opened" date, with the most recent at the top.
- Quick Search: Filter projects instantly by name or path.
- Clean TUI: A modern, minimalist text-user interface designed for clarity and theme compatibility.
- Self-Updating: Keep
nodashup-to-date directly from GitHub releases. - Minimal footprint: Built with Rust for speed, efficiency, and portability.
When launching a project, nodash opens a new terminal window. Terminal detection and fallback order:
Preferred terminals:
Fallbacks (in order):
xtermgnome-terminalkonsole
Note:
- The terminal must be available in your
PATH.- Termux and other mobile environments are not supported.
- For Kitty, WezTerm, Ghostty, and fallback terminals,
nodashsuppresses startup messages for a clean TUI launch.
nodash works seamlessly with the following shells:
- Bash (and other POSIX shells)
- Zsh
- Fish
When opening a project, nodash will:
- Automatically activate the Node.js version specified in your
.nvmrcfile. - Use NVM if available, or fall back to FNM if not.
To install the latest version:
curl -sSL https://raw.githubusercontent.com/MemerGamer/nodash/main/install.sh | bashRequires
curlandsudoto move the binary to/usr/local/bin.
yay nodash-binnodashThis command opens the interactive TUI dashboard.
You can also use nodash with direct commands:
nodash helpDisplay all available commands and interactive controls.
nodash addAdds the current working directory as a new project in your nodash list. It will attempt to detect the Node.js version from a .nvmrc file if present.
nodash updateCheck for updates and self-update the binary to the latest version.
- ↑/↓: Navigate through the project list
- Enter: Open the selected project in a new terminal, automatically applying NVM/FNM version.
- A: Add a new project (prompts for name and path)
- /: Enter search mode to filter projects by name or path
- Esc: Exit search mode and clear the search query
- Q: Quit the application
To build a release binary manually:
cargo build --releaseThis will generate the binary at:
target/release/nodashYou can move it to a directory in your PATH for easy access:
cp target/release/nodash /usr/local/bin/MIT License © 2025 MemerGamer
PRs and feedback welcome! Feel free to open an issue or submit a pull request.