DotDir is a keyboard-friendly dual-pane file manager with a built-in terminal, command palette, extension support, and a reusable React UI package.
This repository contains the main desktop app plus the shared UI workspace used by the website demo and npm package.
DotDir is designed for fast navigation and file operations with a modern, embeddable UI.
What’s in this repo:
- desktop app built with Tauri + React
- reusable UI package published as
@dotdirfm/ui - shared workspace packages used by the app
Key directories:
src— app frontendsrc-tauri— desktop shell and native backendpackages/ui— reusable DotDir UI packagepackages/extension-api— shared extension API package
- Node.js 22+
pnpm- Rust stable toolchain
- Tauri prerequisites for your platform
Linux users may also need the usual Tauri WebKit/system packages, such as:
sudo apt update
sudo apt install \
libwebkit2gtk-4.1-dev \
build-essential \
curl \
wget \
file \
libxdo-dev \
libssl-dev \
libayatana-appindicator3-dev \
librsvg2-devFrom the repo root:
pnpm installStart the frontend dev server:
pnpm devStart the desktop app in development mode:
pnpm tauri devRun the app via the custom Tauri subcommand used in this project:
pnpm serveBuild the frontend:
pnpm buildBuild the desktop app:
pnpm tauri buildRun linting:
pnpm lintAuto-fix formatting/lint issues:
pnpm fmtThe shared UI package lives in packages/ui and is published separately as @dotdirfm/ui.
Package-specific docs:
- GitHub: dotdirfm/dotdir
- npm:
@dotdirfm/ui - Issues: github.com/dotdirfm/dotdir/issues