Floating window to filter arbitrary lists of stuff. Like the Spotlight finder or VSCode command invocation widget

What's New


Swift 5 Version License Platform Carthage compatible

Display things in an app-modal floating window that users can fuzzy-filter by typing ahead. Its style roughly matches the floating Spotlight window.

The list uses the default NSTableView styles, so it'll look right at home on Big Sur and older macOS versions alike!


This module strives for taking care of its components's memory wherever possible. This means you do not need to keep a reference to the window or its controller around. Both will be freed when the action has been completed.

When all possible items are known

This is useful if you want to filter e.g. a limited collection of files, like "Recent Files", or to display a list of known macros.

import FloatingFilter

// ...

let items = [
    Item(identifier: UUID(),          title: "Create new widget"),
    Item(identifier: 202002200930,    title: "Open last document"),
    Item(identifier: "custom-ID_123", title: "Show downloaded data")

FloatingFilterModule.showFilterWindow(items: items) { selectedItems in
    print("Selected:", selectedItems.map { $0.title })



Add this to your Cartfile:

github "cleancocoa/FloatingFilter"

Then run

$ carthage update

... and include FloatingFilter.framework from Carthage/Build/Mac in your app.


Copyright (c) 2020 Christian Tietze. Distributed under the MIT License.

Fuzzy matching is Copyright (c) 2015 Yichi Zhang https://github.com/yichizhang/SwiftyStringScore


  • Swift Tools 5.5.0
View More Packages from this Author


  • None
Last updated: Mon May 27 2024 11:09:10 GMT-0900 (Hawaii-Aleutian Daylight Time)