Skip to content

About

A Windows file explorer built from scratch using Rust and egui. The motivation is simple: I wanted a file explorer that's fast, can tag files with colors, and has built-in preview — without opening a separate app

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

DrxManager

Note: This is a personal project built for my own use. It's not designed for general consumption — no installer, no official support, and many things are hardcoded to my preferences. Feel free to use or modify it, but don't expect customer support.

This project is still a work in progress. Expect bugs, incomplete features, and rough edges. Nothing is guaranteed to work perfectly — it's being built incrementally as I need things.


[BETA] A Windows file explorer built from scratch using Rust and egui. The motivation is simple: I wanted a file explorer that's fast, can tag files with colors, and has built-in preview — without opening a separate app.

Features

  • Keyword Search — Fast text search via SQLite to find files by name.
  • Color Tagging — Label files with HSL color tags. Filter instantly from the sidebar.
  • Instant Preview — Preview panel for images (PNG, JPG, WEBP, BMP) and text files (.txt, .md, .json, etc.) with LRU texture cache — no need to open a file to see its contents.
  • Realtime File Watcher — Automatic detection when files are added, deleted, or modified. No manual refresh needed.
  • Context Menu — Right-click for rename, delete, assign tag, copy path.
  • Breadcrumb Navigation — Navigate folders via an interactive path bar.
  • Dark Theme — The only theme. Dark, clean, with Phosphor icons.

Tech Stack

Component Tech
Language Rust (edition 2024)
UI egui + eframe 0.34
Database SQLite via rusqlite (bundled)
Icons Phosphor (egui-phosphor)
File scanning walkdir + rayon (parallel)
File watching notify
Image decoding image crate
Threading crossbeam-channel, rayon, parking_lot
Config TOML (serde + toml)
Logging tracing + tracing-appender (rolling file)

Architecture

Four layers with one-directional dependencies:

ui/ → services/ → infrastructure/ → shared/
  • shared/ — Data models, traits, error types. No external dependencies.
  • infrastructure/ — SQLite storage, config loader, OS integration (dialogs, drives).
  • services/ — Business logic: file scanner, search, tag management, preview cache.
  • ui/ — egui components. Each component returns an action enum, processed by DrxApp.

Inter-thread communication via crossbeam-channel. No shared mutable state.

Build & Run

Requires Rust 1.85+ (edition 2024).

cargo build              # Debug
cargo build --release    # Release
cargo run                # Run

No need to install SQLite — rusqlite uses the bundled feature.

Data Location (Runtime)

C:\DrxManager\
├── config.toml          # Configuration
├── data\drxmanager.db   # SQLite database (WAL mode)
└── logs\drxmanager.log  # Daily rolling log

These paths are hardcoded for Windows. If developing on Linux/macOS, the folders will be created literally at that path — adjust shared/constants.rs if needed.

Status

This project is actively used and developed as needed. Vector search (Qdrant + ONNX embedding) is planned but not yet implemented — the app runs fully without it.

License

This project is licensed under the MIT License.

About

A Windows file explorer built from scratch using Rust and egui. The motivation is simple: I wanted a file explorer that's fast, can tag files with colors, and has built-in preview — without opening a separate app

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages