whatisgithub

What is shiftit?

fikovnik/shiftit — explained in plain English

Analysis updated 2026-06-26

5,545Objective-CAudience · developerComplexity · 1/5LicenseSetup · easy

In one sentence

A macOS menu-bar app that snaps windows to preset screen positions, left half, right half, corners, full screen, using keyboard shortcuts so you never touch the mouse.

Mindmap

mindmap
  root((repo))
    What it does
      Window snapping
      Keyboard shortcuts
      Menu bar app
    Positions
      Left right halves
      Four corners
      Full screen
    Setup
      Homebrew install
      Accessibility perms
      Unsigned binary
    Status
      Seeking maintainer
      Hammerspoon alternative
      GPL v3 license
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Snap your code editor to the left half and your browser to the right half with one keystroke each.

USE CASE 2

Cycle through half, one-third, and two-thirds window widths by pressing the same shortcut repeatedly.

USE CASE 3

Keep both hands on the keyboard and stop using the mouse to resize and reposition windows while coding.

What is it built with?

Objective-CmacOS

How does it compare?

fikovnik/shiftitschneiderandre/poppingrobbiehanson/cocoahttpserver
Stars5,5455,5115,613
LanguageObjective-CObjective-CObjective-C
Setup difficultyeasymoderatemoderate
Complexity1/52/53/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Binary is unsigned, open via right-click the first time, Accessibility permissions required in System Preferences.

GPL v3, free to use and modify, but any version you distribute must also be open-source under the same GPL v3 license.

So what is it?

ShiftIt is a macOS application that lets you move and resize windows using keyboard shortcuts. Instead of dragging window edges with the mouse, you press a key combination to snap a window to the left half of the screen, the right half, a corner, the full screen, or other preset positions. It runs in the menu bar in the background and can be hidden from the menu bar entirely if preferred. The shortcuts cover snapping windows to the left, right, top, and bottom halves of the screen, as well as to each of the four corners, and to the full screen. There is an optional cycling mode where pressing the same shortcut repeatedly rotates through half-screen, one-third, and two-thirds sizes. Most standard macOS windows work with ShiftIt, though a known compatibility list documents apps that have issues, mostly GTK-based applications. ShiftIt requires macOS 10.7 or later (64-bit) and needs Accessibility permissions turned on in System Preferences so it can control window positions on behalf of the user. The binary is unsigned, so the first time you open it you need to right-click and choose Open rather than double-clicking. The README notes that the project is looking for a new maintainer and that active development has paused in the meantime. A community-maintained alternative that replicates the same functionality using a different automation tool (Hammerspoon) is linked from the README for anyone who needs an actively developed option. ShiftIt is licensed under the GNU General Public License v3. Binaries are available from the releases page, and it can also be installed via Homebrew.

Copy-paste prompts

Prompt 1
ShiftIt is no longer maintained. Help me replicate its left, right, top, bottom, and corner snap shortcuts exactly in Hammerspoon Lua config.
Prompt 2
I use ShiftIt on macOS 13. Explain how to grant Accessibility permissions and customize the default keyboard shortcuts.
Prompt 3
Write an AppleScript that calls ShiftIt to tile my Terminal and VS Code side by side on the left and right halves of the screen.

Frequently asked questions

What is shiftit?

A macOS menu-bar app that snaps windows to preset screen positions, left half, right half, corners, full screen, using keyboard shortcuts so you never touch the mouse.

What language is shiftit written in?

Mainly Objective-C. The stack also includes Objective-C, macOS.

What license does shiftit use?

GPL v3, free to use and modify, but any version you distribute must also be open-source under the same GPL v3 license.

How hard is shiftit to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is shiftit for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.