MCPcopy Index your code
hub / github.com/ereinaimer/iris

github.com/ereinaimer/iris @v1.3.6

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.3.6 ↗ · + Follow
121 symbols 304 edges 31 files 24 documented · 20% updated 3mo agov1.3.6 · 2025-12-30★ 2352 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Iris

<a href="https://github.com/lordaimer/iris/releases/latest">
    <img alt="GitHub Release" src="https://img.shields.io/github/v/release/lordaimer/iris?color=greenlight&label=latest%20release">
</a>
<a href="https://github.com/lordaimer/iris/actions">
    <img alt="GitHub Actions Workflow Status" src="https://img.shields.io/github/actions/workflow/status/lordaimer/iris/ci.yml?label=tests">       </a>
<a href="https://crates.io/crates/iris-cli">
  <img alt="Crates.io" src="https://img.shields.io/crates/v/iris-cli">
</a>
<img alt="License" src="https://img.shields.io/github/license/lordaimer/iris">

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

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.

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".

    <b>Demo: Windows Context Menu</b>



<video src="https://github.com/user-attachments/assets/7c366ac9-9c9a-4428-be70-1234846c1de1" controls width="100%"></video>

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.

Core symbols most depended-on inside this repo

resolve_path
called by 21
src/paths/path_resolve.rs
resolve_target
called by 9
src/core/resolver/target_resolver.rs
get_config_path
called by 8
src/paths/config_path.rs
create_test_config
called by 8
src/core/resolver/target_resolver.rs
validate_presets
called by 7
src/config/config_validator/validate_presets.rs
validate_general
called by 7
src/config/config_validator/validate_general.rs
get_config_dir
called by 6
src/paths/config_path.rs
handle_result
called by 5
src/main.rs

Shape

Function 105
Enum 8
Class 4
Method 4

Languages

Rust100%

Modules by API surface

src/paths/path_resolve.rs29 symbols
src/cli/shell_completion.rs15 symbols
src/core/resolver/target_resolver.rs13 symbols
src/config/config_validator/tests.rs12 symbols
src/platform/windows/context_menu.rs7 symbols
src/core/sort/sort.rs6 symbols
src/config/config_processor/mod.rs6 symbols
src/cli/cli_parser.rs6 symbols
src/config/config_init.rs5 symbols
src/paths/config_path.rs4 symbols
src/config/config_validator/mod.rs4 symbols
src/main.rs2 symbols

For agents

$ claude mcp add iris \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact