Termix 1.8.0
dotnet tool install --global Termix --version 1.8.0
dotnet new tool-manifest
dotnet tool install --local Termix --version 1.8.0
#tool dotnet:?package=Termix&version=1.8.0
nuke :add-package Termix --version 1.8.0
<div align="center">
⚡️ Termix
A modern, high-performance file navigator for your terminal
Built with .NET 9 and Spectre.Console, Termix delivers a fluid, visually rich, flicker-free interface for navigating, searching, and managing files—all from your terminal.
</div>
Demo
https://github.com/user-attachments/assets/c7b47493-ed6b-4b29-b334-f11f65d2dd18
Watch the full walkthrough → Termix on Vimeo (1 minute)
Features
- Instant Recursive Filtering: Start typing to filter files and directories in real-time
- Intuitive File Operations: Create, rename, move, copy, and delete files and directories with visual progress tracking
- Smart Ignoring: Respects
.gitignore
and automatically filters out common build directories - Flicker-Free UI: Double-buffered interface ensures smooth rendering in a two-pane layout
- Live Syntax Highlighting: Preview various file types with syntax highlighting (
.cs
,.js
,.ts
,.py
, and more) - Vim-Style Navigation: Use
J
/K
alongside arrow keys for efficient movement - Nerd Font Support: Enhanced experience with icon support, with ASCII fallback for maximum compatibility
- Cross-Platform: Works seamlessly on Windows, macOS, and Linux
Installation
Option 1: Install via Script (All Platforms)
Prerequisites
Before using the script-based installers, make sure you have:
- macOS / Linux:
curl
unzip
(ortar
for.tar.gz
archives)jq
- Windows:
- PowerShell 5.1 or later (PowerShell Core 7+ recommended)
macOS / Linux
You can install or update Termix directly via our official installer:
# Install or update to latest
curl -fsSL https://raw.githubusercontent.com/amrohan/termix/main/install.sh | bash
# Install specific version
curl -fsSL https://raw.githubusercontent.com/amrohan/termix/main/install.sh | bash -s v1.5.0
# Uninstall
curl -fsSL https://raw.githubusercontent.com/amrohan/termix/main/install.sh | bash -s uninstall
Windows (PowerShell)
Open PowerShell and run:
# Install or update to latest
iex (iwr "https://raw.githubusercontent.com/amrohan/termix/main/install.ps1")
# Install specific version
iex (iwr "https://raw.githubusercontent.com/amrohan/termix/main/install.ps1") -Tag v1.5.0
# Uninstall
iex (iwr "https://raw.githubusercontent.com/amrohan/termix/main/install.ps1") -Uninstall
Option 2: Install as a .NET Global Tool (All Platforms)
- .NET 9 SDK or later installed on your system
dotnet tool install --global termix
Launch the application by running:
termix
Updating Termix
dotnet tool update --global termix
Uninstalling Termix
dotnet tool uninstall --global termix
Option 3: Install from Source
# Clone the repository
git clone https://github.com/amrohan/termix.git
cd termix
# Build and install locally
dotnet pack
dotnet tool install --global --add-source ./nupkg termix
Keyboard Shortcuts
Navigation
Keys | Action |
---|---|
↑ / ↓ | Move selection up/down |
J / K |
Vim-style movement |
Enter / L |
Open file or enter directory |
Backspace / H |
Go to parent directory |
Home / End |
Jump to first or last entry |
Q |
Quit Termix |
File Operations
Keys | Action |
---|---|
S |
Enter search mode (filters recursively as you type) |
Esc (during search) |
Apply the filter and navigate the results |
Esc (after search) |
Clear the filter and show all items |
B |
Go back to the search results when navigating |
A |
Create a new file or folder |
R |
Rename the selected file or folder |
D |
Delete the selected item (with confirmation) |
X |
Move the selected file or folder |
C |
Copy the selected file or folder |
P |
Paste the file or folder |
t |
Open the interactive sort menu |
Preview Pane
Keys | Action |
---|---|
Alt + ↑ / ↓ |
Scroll vertically |
Alt + ← / → |
Scroll horizontally |
Documentation
You can find the detail documentation here
Configuration
Termix works out of the box with sensible defaults. Future versions will support custom configuration options.
Supported File Types
Termix provides rich previews and syntax highlighting for many common file types:
- Code:
.cs
,.js
,.ts
,.py
and more - Images: Preview support for
.png
,.jpg
,.jpeg
, (terminal-compatible rendering) - Configuration:
.yaml
,.yml
,.toml
,.ini
,.conf
,.config
Project Status
Termix is actively maintained and continuously improved. Check the GitHub releases page for the latest updates and features.
Contributing
Contributions are always welcome! Whether it's bug reports, feature requests, or code contributions, please feel free to get involved.
- Fork the repository on GitHub
- Clone the forked repository to your machine
- Create a branch for your feature or bug fix
- Make your changes and commit them with descriptive messages
- Push your changes back to your fork
- Submit a Pull Request to the main repository
Please visit the Issues page to report bugs or suggest features.
Development Setup
If you'd like to contribute to the development of Termix:
- Ensure you have the .NET 9 SDK installed
- Clone the repository and open it in your preferred editor (Visual Studio, VS Code, Rider)
- Run
dotnet restore
to install dependencies - Run
dotnet build
to build the project - Run
dotnet run
to test your changes locally
Key Components
Services/ActionService.cs
: Logic for creating, renaming, deleting, and searchingServices/IgnoreService.cs
: Handles.gitignore
and default ignore rulesServices/IconProvider.cs
: Manages file type icon mappingsServices/CustomSyntaxHighlighter.cs
: Add new language themes hereUI/FileManagerRenderer.cs
: Contains the logic for styling and rendering panesUI/CustomProgressBar.cs
: Progress visualization for long-running operations
Coding Guidelines
- Follow existing code style and patterns
- Use meaningful variable and method names
- Write tests for new features when applicable
- Update documentation to reflect your changes
- Branch from
main
and use descriptive commit messages
Acknowledgements
- This project is made possible by the fantastic Spectre.Console library
- Glob-style ignore matching is handled by DotNet.Glob
- Image handling is provided by SixLabors.ImageSharp
- Icons are powered by the Nerd Fonts project
- Inspired by the simplicity and elegance of .NET Global Tools
License
Termix is licensed under the MIT License.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
This package has no dependencies.
Version | Downloads | Last Updated |
---|---|---|
1.8.0 | 10 | 8/18/2025 |
1.7.0 | 11 | 8/17/2025 |
1.6.0 | 44 | 8/15/2025 |
1.5.0 | 78 | 8/9/2025 |
1.4.0 | 123 | 8/8/2025 |
1.3.0 | 178 | 8/5/2025 |
1.2.0 | 142 | 8/4/2025 |
1.1.0 | 57 | 8/3/2025 |
1.0.0 | 16 | 8/2/2025 |
0.9.0 | 52 | 8/1/2025 |
0.1.0 | 102 | 7/30/2025 |
0.0.9 | 99 | 7/30/2025 |
0.0.8 | 102 | 7/29/2025 |
0.0.6 | 93 | 7/29/2025 |
0.0.5 | 91 | 7/29/2025 |