Skip to content

A simple, lightweight folder size monitor and reminder for Windows built with @tauri-apps and @rust-lang.

License

Notifications You must be signed in to change notification settings

fastfingertips/mist

Repository files navigation

Mist

License Version Platform

Tauri React Rust

Mist is a simple, modern folder size monitor for Windows. It helps you keep track of cache directories, temp folders, or any specific path, and notifies you when they grow too large.

Mist Screenshot

Download

Download Latest Release

  1. Download mist_x.x.x_x64-setup.exe from the releases page.
  2. Run the installer and follow the prompts.
  3. Launch Mist from the Start Menu.

Note: Windows may show a SmartScreen warning since the app is not code-signed. Click "More info" → "Run anyway" to proceed.

Features

  • Folder Monitoring: Tracks the size of any directory you add.
  • Threshold Alerts: Visual and desktop notifications when a folder exceeds your set limit.
  • Quick Access: Open monitored folders with a single click to manage or clean them manually.
  • System Tray: Minimizes to tray for background monitoring. Configurable in Settings.
  • Import/Export: Backup and restore your monitor list easily.
  • Native UI: Designed with Windows Mica effects and Light/Dark mode support.
  • Lightweight: Minimal background resource usage.

Development

If you want to build from source or contribute:

Prerequisites

Setup

  1. Clone the repository:

    git clone https://github.com/fastfingertips/mist.git
    cd mist
  2. Install dependencies:

    npm install
  3. Run in development mode:

    npm run tauri dev
  4. Build for production:

    npm run tauri build

    The installer will be located in src-tauri/target/release/bundle/nsis/.

Important: Windows Notifications in Dev Mode

Note for Developers: Windows desktop notifications will not work when running the app in development mode (npm run tauri dev) or when launching the .exe directly. This is because Windows requires the application to be properly registered in the Start Menu.

To test notifications, you must install the app using the installer (mist_x.x.x_x64-setup.exe). This registers the app with Windows and enables notification functionality.

Tech Stack

Component Technology Purpose & Example
Desktop Framework Tauri v2 Native Windows integration. Used invoke() for Rust IPC and window-vibrancy for Mica effect.
Frontend Framework React v19 + Vite v7 Reactive UI. Used useState, useMemo for state and useDisclosure for modals.
Backend Language Rust Filesystem operations. Used walkdir for directory traversal and serde for JSON config.
Frontend Language TypeScript Type safety. Defined MonitorConfig, MonitorStatus interfaces mirroring Rust structs.
UI Library Mantine v8 Pre-built components. Used Table, Modal, Progress, Switch for the main UI.
Icons Tabler Icons Consistent iconography. Used IconFolderOpen, IconBell, IconAlertTriangle throughout.
Plugins Tauri Plugins Native features. Used plugin-dialog for file picker and plugin-notification for alerts.

License

Distributed under the MIT License.