Skip to content

lordaimer/iris

Repository files navigation

Iris

GitHub Release GitHub Actions Workflow Status Crates.io License

A fast, minimal, config-driven file organizer built with Rust.
Iris helps you sort and organize your messy folders automatically using defined rules.

IrisCliAction.mp4

Features

  • Fast: Built in Rust for high performance.
  • 💻 Multiplatform: Runs on Windows, Linux, and macOS.
  • 🖱️ Context Menu: Right-click "Sort with Iris" support on Windows.
  • 📁 Config Driven: Customize behavior with a simple iris.toml file.
  • 📄 Shell Completion: Support for shell completion scripts.
  • 🤖 Smart Presets: Comes with sensible defaults for common file types.

Installation

Download Binary

Download the latest release for your platform from the Releases Page.

Chocolatey (Windows)

Run the following command in an elevated PowerShell:

choco install iris

Scoop (Windows)

scoop install iris
Alternative: Install from our bucket

If you prefer to use our bucket directly:

scoop bucket add iris https://github.com/lordaimer/iris
scoop install iris/iris

From Crates.io

cargo install iris-cli

Usage

Basic Sorting

To sort a directory using default settings:

iris sort /path/to/folder

Windows Context Menu

On Windows, you can add Iris to the right-click menu:

iris context install

Now simply right-click any folder background and select "Sort with Iris".

Demo: Windows Context Menu
IrisContextMenuAction.mp4

Configuration

Iris automatically creates a default configuration file at:

  • Windows: %APPDATA%\Iris\iris.toml
  • Linux/macOS: ~/.config/iris/iris.toml

Can be customized to define where files go based on extensions or patterns.

iris config edit
[preset.images]
enabled = true
# Sorts .jpg and .png into "Pictures" folder
extension = ["jpg", "png"]
relative_path = "Pictures"

Shell Completion

Automatically generate and install completion scripts for your shell. You can also generate the completion script manually and install it yourself with iris completions <SHELL> command.

iris completions install

Contributing

We welcome contributions! Please see our Contributing Guide for details on:

  • Setting up your development environment
  • Coding standards and conventions
  • How to submit pull requests
  • Testing requirements

Check out the roadmap for planned features and improvements.

License

This project is licensed under the MIT License - see the LICENSE file for details.