awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
jigish avatar

jigish/slate

0
View on GitHub↗
7,836 stars·512 forks·Objective-C·GPL-3.0·23 views

Slate

Slate is a keyboard-driven window manager and tiling system for macOS. It functions as a JavaScript-configurable automation tool and workflow orchestrator, allowing users to resize and position application windows through custom keystroke bindings and predefined spatial configurations.

The project distinguishes itself by using a scripting API to define complex window manipulation logic, system event callbacks, and custom input mappings. This allows for the creation of sequenced action chains and the execution of external shell commands tied to specific keyboard shortcuts.

Its capabilities include comprehensive window management primitives such as directional focusing, window hinting with character overlays, and grid-based arrangements. It also supports multi-monitor optimization, enabling the application to automatically adjust layouts or restore window state snapshots based on detected screen configurations.

The system uses JavaScript for its configuration and logic definitions.

Features

  • macOS Workspace Managers - Acts as a keyboard-driven window manager for resizing and positioning application windows specifically on macOS.
  • Keyboard-Driven Window Orchestration - Provides a keyboard-driven system for moving and resizing application windows using custom shortcuts and grid overlays.
  • Positioning and Resizing - Provides keyboard-driven capabilities for programmatically setting window screen coordinates and dimensions.
  • Workspace Layout Automations - Defines and restores specific arrangements of multiple applications to create consistent, task-based workspaces.
  • JavaScript-Configurable Automation Frameworks - Uses a JavaScript scripting API to define complex window manipulation logic and system event callbacks.
  • Application Scripting APIs - Provides a scripting API using JavaScript to implement dynamic and complex window management logic.
  • Custom Key Action Bindings - Binds custom keystrokes and modal sequences to window operations, shell commands, and action chains.
  • Window - Defines named sets of window positions and sizes for specific applications to activate simultaneously.
  • Configuration Scripts - Uses an executed JavaScript script to define dynamic application behavior, custom functions, and keyboard mappings.
  • Event-Driven Triggers - Executes window operations and shell commands automatically in response to global keyboard shortcuts and system events.
  • Grid Layout Managers - Uses a visual grid overlay to manually resize and move windows into aligned cells.
  • Tiling Window Managers - Organizes application windows into predefined grids and spatial configurations via keystroke bindings.
  • Native macOS API Bridges - Provides native bridges to macOS system APIs for direct manipulation of window positions and screen states.
  • Window Manipulations - Creates named window manipulation actions using parameters or configuration strings for programmatic control.
  • Keyboard-to-Action Mappings - Maps keyboard shortcuts to window operations or JavaScript functions, including repeat-on-hold behavior.
  • Window Arrangement Snapshots - Captures and stores coordinate and dimension data of all open windows to restore spatial arrangements.
  • Window Geometry Snapshots - Captures the current state of all window positions and sizes to restore them later as a named snapshot.
  • Ordered Key Sequences - Intercepts buffered keystroke sequences to trigger complex window operations without conflicting with system shortcuts.
  • Global Event Listeners - Registers callback functions that execute automatically in response to specific system or application events.
  • Shell Command Execution - Runs external terminal commands via keyboard shortcuts with support for blocking execution and working directories.
  • Layout Automation - Automatically triggers specific layouts or snapshots when monitor counts or resolutions change.
  • Multi-Monitor Window Management - Provides capabilities to automatically adjust window layouts and positions based on the number of connected screens.
  • Window Layout Grids - Implements a virtual spatial grid to calculate precise window placements using screen percentages and pixel coordinates.
  • Spatial Window Managers - Arranges multiple windows into predefined spatial configurations based on window titles or order.
  • Child Process Execution - Spawns and manages external shell commands as child processes with configurable working directories.
  • Window Visibility Controllers - Provides utilities to hide, show, or toggle the visibility of specific applications or all open windows.
  • Application Switchers - Implements a customizable alternative to the default system application switcher.
  • Keyboard Navigation - Enables switching focus between windows using directional keys or temporary character-based hinting labels.
  • Window Hinting Overlays - Displays temporary character overlays on all windows to enable quick focusing via a single key press.
  • Directional Focus Switching - Enables changing the active window based on its relative screen position or the application name.
  • Web Browsers - A window management application.
  • More to explore - Configurable window manager using JavaScript.

Star history

Star history chart for jigish/slateStar history chart for jigish/slate

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does jigish/slate do?

Slate is a keyboard-driven window manager and tiling system for macOS. It functions as a JavaScript-configurable automation tool and workflow orchestrator, allowing users to resize and position application windows through custom keystroke bindings and predefined spatial configurations.

What are the main features of jigish/slate?

The main features of jigish/slate are: macOS Workspace Managers, Keyboard-Driven Window Orchestration, Positioning and Resizing, Workspace Layout Automations, JavaScript-Configurable Automation Frameworks, Application Scripting APIs, Custom Key Action Bindings, Window.

What are some open-source alternatives to jigish/slate?

Open-source alternatives to jigish/slate include: kasper/phoenix — Phoenix is a macOS workspace automator and window manager that uses a JavaScript scripting engine to control… hammerspoon/hammerspoon — Hammerspoon is a programmable automation engine for macOS that enables deep system-level control through a Lua… fikovnik/shiftit — ShiftIt is a macOS window manager and tiling utility that enables the resizing and positioning of application windows… material-shell/material-shell — Material Shell is a tiling window manager and Linux desktop environment that replaces traditional window management… domferr/tilingshell — Tilingshell is a window management extension for the GNOME desktop environment that organizes application windows into… pop-os/shell — This project is an automatic tiling window manager and a GNOME desktop interface extension. It functions as a…

Open-source alternatives to Slate

Similar open-source projects, ranked by how many features they share with Slate.
  • kasper/phoenixkasper avatar

    kasper/phoenix

    4,538View on GitHub↗

    Phoenix is a macOS workspace automator and window manager that uses a JavaScript scripting engine to control system-level behaviors. It functions as an AppleScript automation bridge, allowing users to programmatically manipulate application states, window geometry, and desktop interactions. The project enables the creation of custom workflows by binding keyboard shortcuts to JavaScript functions. This allows for the automation of complex system actions, such as organizing application layouts across multiple screens and managing virtual spaces. Its capability surface covers window and applica

    Objective-C
    View on GitHub↗4,538
  • hammerspoon/hammerspoonHammerspoon avatar

    Hammerspoon/hammerspoon

    14,497View on GitHub↗

    Hammerspoon is a programmable automation engine for macOS that enables deep system-level control through a Lua scripting environment. By bridging high-level scripts with native Objective-C APIs, it allows users to interact with the operating system's accessibility tree, intercept hardware input streams, and manage the lifecycle of running applications. The project distinguishes itself through an event-driven architecture that registers asynchronous hooks for system notifications and hardware events. This allows for real-time automation, such as remapping keyboard and mouse inputs, managing wi

    Objective-Cautomationhammerspoonirc
    View on GitHub↗14,497
  • fikovnik/shiftitfikovnik avatar

    fikovnik/ShiftIt

    5,543View on GitHub↗

    ShiftIt is a macOS window manager and tiling utility that enables the resizing and positioning of application windows through predefined keyboard shortcuts. It functions as a shortcut manager to automate window movement and workspace organization. The utility specializes in tiling windows into proportional widths and heights. It includes a dimension cycling feature that rotates window sizes through a set of predefined ratios using directional keyboard inputs.

    Objective-C
    View on GitHub↗5,543
  • material-shell/material-shellmaterial-shell avatar

    material-shell/material-shell

    7,255View on GitHub↗

    Material Shell is a tiling window manager and Linux desktop environment that replaces traditional window management with a grid-based organizer. It functions as a spatial layout engine that automatically arranges application windows into non-overlapping grids to maximize screen space. The system acts as a desktop session manager, recording and restoring window positions and workspace assignments to preserve the exact state of a previous session after a restart. It employs a coordinate-based layout engine to map applications to specific rows and cells for consistent placement. The project cov

    TypeScriptgnomegnome-shellgnome-shell-extension
    View on GitHub↗7,255
  • See all 30 alternatives to Slate→