Skip to content

Repository files navigation

parket

Warning

parket is no longer actively maintained.

I have switched back to dwm on a Linux machine. I will no longer have a Mac available to develop or test parket.

Existing releases remain available, but bug fixes, new features, and compatibility with future macOS versions are not guaranteed.

The repository remains open for a new maintainer or a maintained fork. Responses and PR merges are not guaranteed.

A small native tiling window manager for macOS.

It tiles normal document windows with a dwm-style master-stack layout and emulates workspaces by moving inactive workspace windows offscreen. It uses Swift, public macOS APIs, and zero runtime dependencies. It does not require SIP changes.

parket preview

Inspired by dwm and AeroSpace.

Install

brew install --cask basuev/parket/parket

Open parket from Applications. On first launch, parket opens the Accessibility prompt. Grant access, then choose Recheck in the permission window or Recheck Accessibility from the menubar.

Homebrew is the normal install path. Release zips use ad-hoc signing.

Requirements

  • macOS 14+
  • Apple Silicon
  • Accessibility permission

Keys

Key Action
Option + 1-9 Switch workspace
Option + Shift + 1-9 Move focused window to workspace
Option + J/K Focus next or previous window
Option + Return Swap focused window with master
Option + Tab Switch to last active workspace
Option + M Toggle monocle layout
Option + , / Option + . Focus previous or next monitor
Option + Shift + , / Option + Shift + . Move window to previous or next monitor

Command+Tab remains the macOS app switcher. If it selects a window on another parket workspace, parket opens that workspace and focuses the selected window.

Menubar commands: Pause Tiling, Retile Now, Pause and Restore Windows, Open Config, Copy Diagnostic Report, Reload Config.

Model

  • 9 workspaces per display.
  • Master-stack and monocle layouts.
  • One native tab group counts as one tileable window.
  • Panels, dialogs, minimized windows, fullscreen windows, and dead AX elements stay out of workspace state.
  • Recovery actions bring tracked windows back onscreen.

Configuration

Edit ~/.config/parket/config.toml. All fields are optional.

workspace_count = 9
master_ratio = 0.55
modifier = "option"

[bindings]
focus_next = "j"
focus_prev = "k"
swap_master = "return"
toggle_layout = "m"
last_workspace = "tab"

[[custom]]
key = "shift+return"
command = "open -n -a Terminal"

Bindings use the configured modifier key. Prefix a key with shift+ to add Shift. See config.example.toml for supported key names and defaults.

Use Reload Config from the menubar after editing.

Build from Source

make install
open /Applications/parket.app

Run the required local gate:

make check

make check runs formatting, policy checks, tests, and a release build. See Tests/Smoke/README.md for AX smoke checks and docs/benchmarks.md for latency runs.

Update

brew update
brew upgrade --cask basuev/parket/parket

Source install:

git pull
make install

Source installs replace only Contents/MacOS/parket, so Accessibility permission survives the update.

Uninstall

brew uninstall --cask basuev/parket/parket
rm -rf /Applications/parket.app

Source checkout:

make uninstall

Benchmarks

The latency harness measures hotkey dispatch to the expected visible, focused fixture window.

Latest local two-display matrix, 2026-06-14:

Scenario parket AeroSpace
Default focus p95 9.5 ms 29.7 ms
Multi-monitor focus p95 15.2 ms 38.9 ms
Native-tabs scenario Passed Failed correctness

See docs/benchmarks.md for the full matrix, run notes, and claim wording.

Contributing

Active development has stopped because the author has switched back to dwm on Linux and will no longer have a Mac available for testing.

Documentation fixes may still be reviewed. Changes to window behavior need verification by a contributor with a Mac. Passing make check alone does not replace AX smoke checks in a real macOS session.

Responses, reviews, and PR merges are not guaranteed.

If you want to maintain parket or a fork, comment on the maintainer search issue. Forks are welcome under the MIT license.

License

MIT

About

A small native tiling window manager for macOS. No longer actively maintained. Looking for a maintainer.

Topics

Resources

Stars

21 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages