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. ## 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](https://github.com/lordaimer/iris/releases). ### From Crates.io ```bash cargo install iris-cli ``` ## Usage ### Basic Sorting To sort a directory using default settings: ```bash iris sort /path/to/folder ``` ### Windows Context Menu On Windows, you can add Iris to the right-click menu: ```powershell iris context install ``` Now simply right-click any folder background and select **"Sort with Iris"**.
Demo: Windows Context Menu
## 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. ```bash iris config edit ``` ```toml [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 ` command. ```bash iris completions install ``` ## Contributing We welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details on: - Setting up your development environment - Coding standards and conventions - How to submit pull requests - Testing requirements Check out the [roadmap](.project/roadmap.md) for planned features and improvements. ## License This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.