Skip to content

About

Free Native macOS window manager with linked resizing and adaptive Bento tiling

Topics

Resources

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

BetterTile app icon

BetterTile

Your windows. Working together.

A free, native macOS window manager.
Snap windows into place, resize neighbours together, and let Adaptive layouts make room as your work grows.

Download the latest beta · Website · Features · Install · Privacy · Documentation

CI status macOS 26 or later License: GPL v3 or later Free forever

Requires an Apple silicon Mac, macOS 26 or later, and Accessibility permission.
The public beta is self-signed and not notarized. Read the installation steps before first launch.

Watch the full BetterTile tour: snapping, linked resizing, Adaptive, Tabbed, the Layout Wheel, Saved Layouts, and multiple displays
Watch the full tour · 38 seconds

Everything it does

Feature demonstrations. For videos with playback controls, visit the website.

Resize neighbours together

Drag the shared boundary between adjacent windows. Both windows resize together.
Choose Live Resize or a Resize Preview that applies when you release.

Linked resizing demonstration: moving a shared boundary resizes neighbouring windows together

Adaptive tiling

Open a window. Adaptive makes room in the layout while keeping movement and resizing to a minimum.
Swap windows, adjust the layout, or float a window out when it needs its own space.

Adaptive demonstration: each new window takes a pane and the layout makes room

Tabbed panes

Group windows into resizable panes. Select a tab to bring its window forward.
Drag tabs between panes, or drag a floating window onto a tab bar to add it as a tab.

Tabbed demonstration: tabs switch the visible window, a tab moves between panes, and a floating window joins a pane as a tab

Layout Gallery shows a picture of each pane layout and applies it to the whole display.
The + button opens an app straight into a pane. Tab bars can hide until you point at them.

Layout Gallery demonstration: the gallery opens from the tab bar menu, previews a 2 × 2 grid, and applies it

Turn off Stage Manager for Tabbed. Pane assignments last for the current app session.
Cross-display tab dragging is unavailable.

Saved Layouts

Save a desktop's arrangement and bring it back with one click. Undo Apply puts the windows back.
Each pane can prefer apps or an App Group. Bind a layout to a set of displays to apply it when they connect.
Apply never opens an app or takes a window from another desktop.

Saved Layouts demonstration: a layout applied from the menu bar panel arranges three windows, then Undo puts them back

Layout Wheel

Hold Control + Option + Shift, choose a sector, and release. The center or Escape cancels.
The default wheel places windows and has Repair Layout at the bottom.
The Grouped style fans out groups such as Size, Thirds, Displays, Mode, and Choose Layout.

Layout Wheel demonstration: the wheel opens at the pointer, places a window on the right half, then Repair Layout arranges the desktop

Configure the style, trigger, size, and actions on the Layout Wheel Settings page.
The optional Middle Click trigger reserves unmodified middle-click system-wide while enabled.
Other apps receive that button again when you turn the option off.

More ways to arrange your windows

Drag snapping
Drag a title bar toward an edge or corner. Preview the placement before you release.

Repair Layout
Rebuild the current desktop's layout from its visible windows, with equal shares and no gaps.

Multiple displays
Next Display and Previous Display make room on the destination and close the gap on the source.

Keyboard shortcuts and undo
Place windows with global shortcuts, with duplicate checks for BetterTile actions.
Undo a placement to restore an earlier window frame.

Watch drag snapping · Watch Repair Layout and multiple displays · Watch shortcuts and undo


What you need

  • An Apple silicon Mac with macOS 26 or later. Intel Macs are not supported by current releases.
  • Accessibility permission. This is the only macOS permission BetterTile requests.
  • To build from source: Xcode 26 / Swift 6.3 or later. See Development setup.

Install

  1. Download the latest beta. Open the BetterTile-*-beta.dmg and drag BetterTile into Applications.
  2. Launch BetterTile. The beta is signed with the stable, self-signed BetterTile Beta certificate. It is not signed with an Apple Developer ID and is not notarized. After the first launch attempt, open System Settings → Privacy & Security and choose Open Anyway after confirming the download came from this repository. You can check it against the .sha256 file beside the release download.
  3. Follow BetterTile's explanation to grant Accessibility permission. BetterTile runs in the menu bar. Its Dock icon is optional and off by default.

Updates

BetterTile checks its GitHub-hosted update feed every four hours by default. It shows release notes and asks before downloading or installing. Turn automatic checks off in General Settings, or use Check for Updates… at any time.

Sparkle verifies each update's EdDSA signature against a public key built into the app. This is separate from the beta's macOS code signature. Public betas since 0.4.1 use the same self-signed certificate to preserve Accessibility permission across normal updates. If that identity changes, the release notes will explain the one-time permission steps.

Build from source

Follow Development setup to configure your free Personal Team, open BetterTile.xcodeproj, and run the shared BetterTile scheme. The Debug app has its own configuration and Accessibility grant, separate from the public beta. Package.swift exposes supporting libraries only; the runnable app comes from the Xcode project.

Keeping Accessibility permission across rebuilds

Use your Personal Team in the gitignored Config/LocalSigning.xcconfig and keep the bundle identifier unchanged. Ad-hoc signing changes the app's identity on each rebuild. See the signing guide for setup and the one-time permission reset.

Private by default

Window geometry and configuration stay on your Mac. BetterTile has no advertising, behavioral tracking, or sale of user data. It explains Accessibility permission before requesting it.

Public Apple APIs move and resize windows. A small, documented set of reviewed, read-only private observations improves window identity, minimum-size handling, Spaces, and Stage Manager behavior. Each observation is validated and has a public fallback. BetterTile uses no code injection or SIP workaround.

BetterTile observes limited pointer and keyboard input for snapping, resizing, and the Layout Wheel. Update checks and downloads contact GitHub, which receives ordinary connection metadata. These requests send no window data, configuration, analytics, telemetry, crash reports, or system profile. Send Feedback opens a GitHub form with the app version and build in its suggested title; it submits no issue automatically.

Read Security and privacy for the input scope, network disclosure, private observations, fallback behavior, and vulnerability reporting.

Known limits

  • No cross-Space window movement. BetterTile does not move windows between macOS desktops.
  • Stage Manager groups stay single-window. A thumbnail drag selects one validated frontmost member. BetterTile does not move or synchronize the other windows in that Stage group.
  • Tabbed needs Stage Manager off. Pane assignments, followed Saved Layouts, and placement undo history last for the current app session. Cross-display tab dragging is unavailable.
  • Some apps restrict window sizes. Broader real-app stacking, multi-display, and Space-switch behavior remains under validation. Read the beta notes.

BetterTile is free

Free forever. No paid tier, subscription, trial, or features held behind a purchase.
Open source under the GNU GPL v3 or later.
Use it, read it, fork it, and share modified versions under the same license.

Download BetterTile · Explore the website

Documentation

Acknowledgements

  • Vorssaint — BetterTile includes adapted settings and menu-panel presentation code from Vorssaint. Its demand-based service ownership shaped BetterTile's runtime lifecycle. See Third-party notices for attribution and terms.
  • Rectangle — a reference for event-driven window management on macOS.

Made by @LMC-Karma

About

Free Native macOS window manager with linked resizing and adaptive Bento tiling

Topics

Resources

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Contributors

Languages