Documentation

Install, run, and control Astur.

Complete reference for Windows install, mouse bindings, tiling layouts, workspaces, hotkeys, config files, status bars, and source builds.

Install

Download astur-windows-x64.exe from GitHub Releases. No installer required. No admin rights required for normal windows. Place it anywhere you like - your desktop, C:\tools\, wherever.

Astur is a Windows application. It manages Win32 windows and targets Windows 10/11 x64. macOS, Linux, Android, and iOS cannot run the release exe.

Run as administrator only when you need Astur to manage elevated windows such as Task Manager or admin terminals.

To run on login, create a shortcut in your Startup folder: press Win+R, type shell:startup, and paste a shortcut to the exe there.

Running

Double-click the exe or run it from a terminal. A console window appears confirming Astur is active:

Astur running.
  LEFT ALT + left-drag  = move window
  LEFT ALT + right-drag = resize nearest corner (red bracket)
  LEFT ALT is reserved for Astur (apps don't see it);
  Alt+Tab still works. Use RIGHT ALT for normal Alt behavior.

Keep this console window open while you use Astur. Closing it stops Astur.

Quitting

Press Ctrl+C in the console window, or close it. Astur cleanly unhooks from the system before exiting.

Moving windows

Hold Left Alt and left-click-drag anywhere on a window to move it. You do not need to click the title bar - click the window body, a text field, anywhere.

If the window is maximised, dragging it automatically restores it to a floating size (half the monitor work area) centred under your cursor first.

Resizing windows

Hold Left Alt and right-click-drag anywhere on a window to resize it. Astur finds the corner of the window closest to your cursor and anchors that corner to your drag. The opposite corner stays fixed.

A small red L-bracket appears at the active corner so you always know which corner is being dragged. The bracket disappears when you release the button.

Tiling mode

Astur starts tiled by default. Press Alt+T to toggle tiling mode.

When tiling is enabled, current windows are enumerated and arranged. New windows are added automatically, and minimised windows are excluded from the tile grid.

Press Alt+T again to disable tiling. Workspaces remain tracked, but windows stop snapping to layout positions until tiling is enabled again.

Layout

Astur supports two layout modes:

  • dwindle - default. Each new tiled window splits the remaining space, spiralling toward a corner.
  • master - one master column on the left, with remaining windows stacked vertically on the right.

In master mode, Alt+H shrinks and Alt+L grows the master column. In dwindle mode, those keys adjust the focused window split instead.

Promote the focused window to master position with Alt+M.

Configuration

On first run, Astur writes config files to %USERPROFILE%\.astur\:

  • astur.conf - workspaces, layout, gaps, focus behavior, animations, launchers, window rules, and hotkeys.
  • navbar.conf - status bar size, position, fonts, colours, and widgets.

Both files hot-reload on save. You can also override paths with ASTUR_CONFIG and ASTUR_NAVBAR.

Status bar

Astur can draw a per-monitor bar with workspace pills, the focused window title, layout state, clock, date, CPU, memory, and battery widgets.

The bar reserves screen space before tiling so windows do not sit underneath it. Set enabled = false in navbar.conf to disable it.

Focus and swap

Alt+J / Alt+K cycle focus forward/backward through the tiled windows on the active workspace. Focus wraps around.

Alt+Shift+J / Alt+Shift+K swap the focused window with its neighbour in the tile order, then retile.

Floating windows

Press Alt+F to toggle the focused window between tiled and floating. Floating windows are excluded from the tile grid but remain visible on the workspace. You can still Alt-drag them freely.

Switching workspaces

Astur supports up to 10 workspace keys by default. Press Alt+1 through Alt+9, or Alt+0, to switch. Windows on inactive workspaces are hidden; windows on the newly active workspace are shown and the layout is applied.

In shared mode, workspaces are distributed across monitors from the primary monitor outward. In per-monitor mode, each monitor has its own independent workspace set.

Moving windows to a workspace

Press Alt+Shift+1 through Alt+Shift+9, or Alt+Shift+0, to move the focused window to that workspace. Astur follows the window to its destination.

All hotkeys

ShortcutAction
Alt + left-dragMove window
Alt + right-dragResize from nearest corner
Alt + TToggle tiling mode on/off
Alt + JFocus next window
Alt + KFocus previous window
Alt + Shift+JSwap with next window
Alt + Shift+KSwap with previous window
Alt + arrowsFocus window by direction (cursor follows)
Alt + Shift + arrowsMove window by direction (across monitors)
Alt + HShrink master column
Alt + LGrow master column
Alt + MPromote focused window to master
Alt + FToggle float for focused window
Alt + WClose focused window
Alt + EnterLaunch terminal
Alt + Shift+EnterLaunch browser
Alt + 1-9, 0Switch to workspace
Alt + Shift+1-9, 0Move focused window to workspace
Alt + TabApp switcher (pass-through preserved)
Right AltNormal Alt - Astur does not touch it

The letter binds (J K H L M T F W) are rebindable in %USERPROFILE%\.astur\astur.conf via the key_focus_next, key_close_window, etc. keys. Workspace keys, gaps, layout, borders, focus behavior, animations, launchers, and window rules are configured there too. Arrows and Enter are fixed.

Build from source

Requires Rust stable (rustup).

git clone https://github.com/Page011/Astur
cd Astur
cargo build --release
# binary: target\release\astur.exe

The only dependency is the windows crate (MIT/Apache-2.0) from Microsoft - no third-party runtime, no C++ redistributable.

How it works

Astur installs two Windows low-level hooks at startup:

  • WH_MOUSE_LL - intercepts every mouse event system-wide before it reaches any application.
  • WH_KEYBOARD_LL - intercepts every keyboard event. Left Alt is swallowed so applications never see it and it cannot trigger menus or system shortcuts.

Alt+Tab is preserved by synthesising injected key events: when the physical Alt+Tab is swallowed, Astur injects a synthetic Alt down + Tab down/up so the system task switcher still operates normally.

Window moves and resizes are dispatched to a dedicated worker thread. This means the input hook returns instantly and the cursor never stutters, even if the target application is slow to respond to SetWindowPos. Intermediate positions are coalesced - only the most recent target is applied.

The tiling manager runs on its own thread too, receiving lightweight commands from the hooks via a queue. Retiling uses SetWindowPos calls and optional positional tweening. Workspace slide transitions use a frozen monitor bitmap plus DWM thumbnails of incoming windows.