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.
Overview
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
Workspace
Key directories:
src— app frontendsrc-tauri— desktop shell and native backendpackages/ui— reusable DotDir UI packagepackages/extension-api— shared extension API package
Prerequisites
- 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-dev
Install
From the repo root:
Development
Start the frontend dev server:
Start the desktop app in development mode:
Run the app via the custom Tauri subcommand used in this project:
Build
Build the frontend:
Build the desktop app:
Quality Checks
Run linting:
Auto-fix formatting/lint issues:
UI Package
The shared UI package lives in packages/ui and is published separately as @dotdirfm/ui.
Package-specific docs:
Links
- GitHub: dotdirfm/dotdir
- npm:
@dotdirfm/ui - Issues: github.com/dotdirfm/dotdir/issues