Documentation

rfd

version Documentation dependency status

WIP native file dialogs for Windows, Linux (GTK), MacOS.

Example

let res = rfd::Dialog::pick_files()
    .add_filter("text", &["txt"])
    .add_filter("rust", &["rs", "toml"])
    .starting_directory(&"/home")
    .open();

let file = res.first();

State

GitHub Workflow Status

API Stability
:construction:
Feature Linux Windows MacOS [1] Wasm32
SingleFile :heavy_check_mark: :heavy_check_mark: :heavy_check_mark: :construction:
MultipleFile :heavy_check_mark: :heavy_check_mark: :heavy_check_mark:
PickFolder :heavy_check_mark: :heavy_check_mark: :heavy_check_mark:
SaveFile :heavy_check_mark: :heavy_check_mark: :heavy_check_mark:
Filters :heavy_check_mark: :heavy_check_mark: :heavy_check_mark:
StartingPath :heavy_check_mark: :heavy_check_mark: :heavy_check_mark:
Async

[1] Freezes when used with winit (same way as nfd) #1779

rfd-extras

AKA features that will be either in a separate rfd-extras crate, or behind a feature flag

Feature Linux Windows MacOS
MessageDialog
PromptDialog
ColorPicker