conaticus/FileExplorer

Rust

대체: Directory OpusTotal Commander

Fast file explorer written with Tauri and React.

file-explorertaurireactdesktoprust
스타 성장
스타
1.8k
포크
127
주간 성장
+4
이슈
38
1k1.5k
2023년 6월2024년 7월2025년 8월2026년 9월
아티팩트crates.io
README

🚀 Fast File Explorer

Rust Logo

License: GPL v3

A fast file explorer built with Rust and Tauri

Fast Search Feature

✨ Features

  • 🚀 Blazing Fast Search: Multiple search algorithms with ~15ms response time vs 3min 45sec for Windows Explorer
  • 🔍 Advanced Search Engine:
    • Fast fuzzy search with ART (Adaptive Radix Tree) implementation
    • LRU caching for optimal performance
    • Multiple search algorithms for different use cases
  • 📁 Comprehensive File Operations: Copy, move, delete, rename with robust error handling
  • 🌐 SFTP Support: Full remote file system operations including browsing, uploading, and downloading
  • 🔐 Advanced Permissions: File and directory permission management
  • 📊 File Metadata: Comprehensive metadata viewing and management
  • 🔨 File Hashing: MD5, SHA2, and CRC32 hash generation for file integrity
  • 📄 File Templates: Template system for creating new files
  • 👁️ File Preview: Built-in preview system for various file types (spotlight-like)
  • 💾 Volume Operations: Drive management and volume operations
  • ⚙️ Customizable Settings: Extensive configuration options
  • 🎨 Modern UI: React-based interface with context menus and responsive design

🔍 Current Status

Cross platform compatibility is given and it supports all common Linux distros, macOS, and Windows which are supported by Tauri. If there is an interest in contributing feel free to join the discord channel from Connaticus or message me or my team.

🏗️ Architecture

This is a Tauri-based application with a Rust backend and React frontend:

Backend (Rust)

  • Search Engine: Multiple algorithms with LRU caching
  • File System Operations: Local and SFTP file operations
  • Command System: Modular command handlers for different operations
  • Error Handling: Centralized error management with standardized codes (401-500)
  • Feature Flags: Extensive Cargo features for different build configurations

Frontend (React)

  • Provider Pattern: Hierarchical context providers for state management
  • Modern UI: Component-based architecture with custom hooks
  • Responsive Design: Adaptive layouts for different screen sizes

Coming Soon

  • Real-time file watching with caching service
  • Search/caching progress indicators
  • Enhanced terminal integration

🛠️ Installation

Our plan is to provide installers for the supported operating systems or common package installers. Unfortunately we have serious Problems with Tauri and creating installers. There are some installers for linux under dist-builds. In the future there will be ready to go packages for macOS, Linux and Windows until then please refer to the compilation from source for your computer.

Installation from source

Prerequisites for installing from source

Other required dependencies are installed automatically by the Tauri CLI. If they are not please contact us.

Install with compiling from source

Note that on macOS you need XCode installed with the build tools.

# Install Tauri CLI
cargo install tauri-cli # The version should be >2.4.0 if not already installed

# Build for production
cargo tauri build

Go into the build directory and run the created binary. The binary is located in FileExplorer/src-tauri/target/release/bundle/. The name of the binary is file-explorer or

🐧 Linux

Under Linux the given command generates an .deb, .rpm, AppImage in the FileExplorer/src-tauri/target/release/bundle folder. Select the one which fits your distribution. Either run the AppImage, Binary or install the .deb or .rpm package.

For the AppImage

#Make sure the image is runnable
chmod +x yourapp-x.y.z.AppImage
#Run the image. After that it should behaving like a native application
./yourapp-x.y.z.AppImage

Recommended is to use the binary created in FileExplorer/src-tauri/target/release/src-tauri. Give it executable permissions and then run it from the terminal. You can also put it into your user binaries folder, e.g. ~/bin, and add it to your PATH variable.

🍎 macOS

# Install Tauri CLI
cargo install tauri-cli # The version should be >2.4.0 if not already installed

# Build for production
cargo tauri build

Tauri creates an .dmg or .app bundle under the folder FileExplorer/src-tauri/target/release/bundle/macos/. Recommended is to use the binary created in FileExplorer/src-tauri/target/release/src-tauri. Give it executable permissions and then run it from the terminal. You can also put it into your user binaries folder, e.g. ~/bin, and add it to your PATH variable.

🪟 Windows

This generates an installer for your system, which lays in FileExplorer/src-tauri/target/release/bundle/msi/. There should be an .exe or .msi which is called file-explorer. To install it you need to double click the file and install like any other application. Then you can completely remove the FileExplorer folder.

Development Setup

# Install Tauri CLI
cargo install tauri-cli # The version should be >2.4.0

# Build for production
cargo tauri build

# Run the development server
cargo tauri dev

Testing and Development Commands

The project uses feature flags for different configurations:

# Run all tests including long-running ones
cargo test --features full

# Run with benchmark features
cargo test --features benchmarks

# Enable all logging during tests
cargo test --features log-all

Available feature combinations:

  • full - All features including long tests, benchmarks, and file opening
  • log-search - Enable search progress and error logging
  • log-index - Enable indexing progress and error logging

📸 Images

📄 History

The Explorer was started as a project from the youtuber Connaticus. He documented parts of his development journey online in two Videos: I Made a FAST File Explorer and How I RUINED My Rust Project.

Lots of changes were made in the course of the InformatiCup from the year 2025. It is a competition in Germany. The given task was to contribute to existing open source projects. The team members were Marco Brandt, Daniel Schatz, Lauritz Wiebusch, Sören Panten. The repo can be found under FileExplorer.

⚡ Performance

This file explorer emphasizes extreme performance with benchmarks showing significant improvements over native solutions (tested on 170,000 paths):

Operation Fast File Explorer Windows Explorer
File search ~15ms 3min 45sec

Technical Implementation

  • Multiple Search Algorithms: Fast fuzzy search, ART (Adaptive Radix Tree)
  • LRU Caching: Intelligent caching for search results
  • Rust Backend: Memory-safe, zero-cost abstractions
  • Modular Architecture: Command-based system with feature flags

⚙️ Configuration

The application uses several configuration files:

  • src-tauri/config/settings.json - Application settings
  • src-tauri/config/meta_data.json - Metadata configuration
  • src-tauri/tauri.conf.json - Tauri application configuration
  • package.json - Frontend dependencies and scripts

🤝 Contributing

Contributions are welcome! Before contributing, please read our contributing guidelines.

📝 License

This project is licensed under the GNU General Public License v3.0 – see the LICENSE file for details.

📬 Contact

Have questions or feedback? Open an issue on our GitHub repository!

관련 저장소
sxyazi/yazi

💥 Blazing fast terminal file manager written in Rust, based on async I/O.

Rustcrates.iocliMIT Licenseasyncioconcurrency
yazi-rs.github.io
42k1k
nvim-tree/nvim-tree.lua

A file explorer tree for neovim written in lua

LuaOtherluaneovim
8.6k639
moudey/Shell

Powerful context menu manager for Windows File Explorer

C++appMIT Licensecontext-menufile-explorer
nilesoft.org
6.8k261
kalcaddle/KodExplorer

A web based file manager,web IDE / browser based code editor

PHPPackagistfilemanagerfile-sharing
kodcloud.com
6.4k1.8k
prasathmani/tinyfilemanager

Single-file PHP file manager, browser and manage your files efficiently and easily with tinyfilemanager

PHPPackagistappGNU General Public License v3.0phpfilemanager
tinyfilemanager.github.io
6k1.8k
nvim-neo-tree/neo-tree.nvim

Neovim plugin to manage the file system and other tree like structures.

LuaMIT Licenseneovimfile-explorer
5.6k301
sayanarijit/xplr

A hackable, minimal, fast TUI file explorer

Rustcrates.iocliMIT Licensetuifile-explorer
xplr.dev
4.8k95
kalcaddle/kodbox

kodbox is a file manager for web. It is a newly designed product based on kodexplorer. It is also a web code editor, which allows you to develop websites directly within the web browser.You can run kodbox either online or locally,on Linux, Windows or Mac based platforms

PHPPackagistappfile-explorerfilemanager
kodcloud.com
3.3k495
ganlvtech/down_52pojie_cn

A single page file explorer that can be hosted on static website. 吾爱破解论坛 爱盘 https://down.52pojie.cn/ 页面的源代码

PHPPackagistMIT Licensevuefile-explorer
ganlvtech.github.io/down_52pojie_cn/
2.8k586
d0k3/GodMode9

GodMode9 Explorer - A full access file browser for the Nintendo 3DS console :godmode:

CGNU General Public License v3.03dsfile-explorer
2.6k229
Alexander-Miller/treemacs

Emacs LisplibraryGNU General Public License v3.0emacsfile-explorer
2.4k168
1hakr/AnExplorer

📁 Another Android Explorer ( File Manager ) is an All-in-One Open source file manager. AnExplorer File Manager (File Explorer) is designed for all android devices including Phones, Phablets, Tablets, Chromecast, Wear OS, Android TV and Chromebooks. It's a fully designed with Material guidelines by Google.

JavaMavenappApache License 2.0storageusb-devices
anexplorer.io
2k629