samhocevar/portable-file-dialogs

💬 Portable GUI dialogs library, C++11, single-header

C++

1,265

195 commits

updated Mar 21, 2025

See the code

README

Portable File Dialogs

A free C++11 file dialog library.

  • works on Windows, Mac OS X, Linux
  • single-header, no extra library dependencies
  • synchronous or asynchronous (does not block the rest of your program!)
  • cancelable (kill asynchronous dialogues without user interaction)
  • secure (immune to shell-quote vulnerabilities)

Codacy Badge

Status

The library is now pretty robust. It is not as feature-complete as Tiny File Dialogs, but has asynchonous dialogs, more maintainable code, and fewer potential security issues.

The currently available backends are:

  • Win32 API (all known versions of Windows)
  • Mac OS X (using AppleScript)
  • GNOME desktop (using Zenity or its clones Matedialog and Qarma)
  • KDE desktop (using KDialog)

Experimental support for Emscripten is on its way.

Documentation

History

  • 0.1.0 (July 16, 2020): first public release

Screenshots (Windows 10)

warning-win32 notify-win32 open-win32

Screenshots (Mac OS X, dark theme)

warning-osxdark notify-osxdark open-osxdark

Screenshots (Linux, GNOME desktop)

warning-gnome notify-gnome open-gnome

Screenshots (Linux, KDE Plasma desktop)

warning-kde notify-kde open-kde

samhocevar/portable-file-dialogs

💬 Portable GUI dialogs library, C++11, single-header

C++

1,265

195 commits

updated Mar 21, 2025

See the code

README

Portable File Dialogs

A free C++11 file dialog library.

  • works on Windows, Mac OS X, Linux
  • single-header, no extra library dependencies
  • synchronous or asynchronous (does not block the rest of your program!)
  • cancelable (kill asynchronous dialogues without user interaction)
  • secure (immune to shell-quote vulnerabilities)

Codacy Badge

Status

The library is now pretty robust. It is not as feature-complete as Tiny File Dialogs, but has asynchonous dialogs, more maintainable code, and fewer potential security issues.

The currently available backends are:

  • Win32 API (all known versions of Windows)
  • Mac OS X (using AppleScript)
  • GNOME desktop (using Zenity or its clones Matedialog and Qarma)
  • KDE desktop (using KDialog)

Experimental support for Emscripten is on its way.

Documentation

History

  • 0.1.0 (July 16, 2020): first public release

Screenshots (Windows 10)

warning-win32 notify-win32 open-win32

Screenshots (Mac OS X, dark theme)

warning-osxdark notify-osxdark open-osxdark

Screenshots (Linux, GNOME desktop)

warning-gnome notify-gnome open-gnome

Screenshots (Linux, KDE Plasma desktop)

warning-kde notify-kde open-kde

Project health

Overall

2.1/10

Maintained

0/10

Code review

1/10
OpenSSF Scorecard

Significant stargazers

Adolfo Jayme-Barrientos

62 followers · starred May 2020

Michael Fogleman

5,733 followers · starred Oct 2025

Isaiah

60 followers · starred Oct 2022

Geequlim

210 followers · starred Apr 2022