Skip to content

About

Customize app and dock behaviors in each space

Topics

Resources

Code of conduct

Contributing

Stars

16 stars

Watchers

1 watching

Forks

Repository files navigation

SpaceSwitcher

Customize space experiences.


Connect to DesktopRenamer's SpaceAPI

Add custom rules to each space

Different docks for each space

SpaceSwitcher is a macOS workspace enhancer that lets you control which app and dock to show in each workspace.

📦 Installation

Requires macOS 13.0 Ventura or above.

Direct Download

  1. If you haven't, install DesktopRenamer, which provides necessary SpaceAPI to inform SpaceSwitcher the current space info
  2. Start SpaceAPI in DesktopRenamer Settings → General
  3. Download the SpaceSwitcher from Releases
  4. Drag the app to the Applications folder
  5. All set!

Homebrew

You can also choose to download it from Homebrew:

brew install --cask gitmichaelqiu/tap/desktoprenamer
brew install --cask gitmichaelqiu/tap/spaceswitcher

Open App

Because I do NOT have an Apple developer account for the app releases, you may receive alerts such as "Developer is not verified".

To resolve this, go to System Settings → the bottom of Privacy & Security → Open SpaceSwitcher.

💡 How to Use

Here is an example:

  • My Zen browser has four workspaces with the shortcut Control + Shift + Number
  • In SpaceSwitcher/Rules, I add the rule of "simulate shortkey" for each macOS space
  • So when I switch to a space, Zen browser can automatically switch to the corresponding workspace

Rule presets

The Rule Editor includes three editable presets for common source-space workflows:

  • Hide Minimized Windows Outside Source Space restores windows on their source space and hides them elsewhere when minimized.
  • Hide Windows Outside Source Space restores windows on their source space and hides them elsewhere.
  • Minimize Windows Outside Source Space restores windows on their source space and minimizes them elsewhere.

Presets replace only the workflow groups and fallback actions. The selected application, rule identity, and enabled state are preserved.

Rules are evaluated from top to bottom. The first rule that produces actions for a window claims that window, so place app-specific rules above an All Apps catch-all when they should take precedence. Drag rules in the Rules tab to change their priority; new rules are added at the bottom.

🛜 SpaceAPI Prerequisite

To get the current space's information, DesktopRenamer is required.

After downloading DesktopRenamer, you need to turn on SpaceAPI in Settings → General.

⚠️ Issues

You are welcome to create issues/suggestions in GitHub Issues.

If you are curious what I am doing on the project, go to the Issues page. The pinned issues are what I am focusing.

🙏 Acknowlegements

This app uses the following packages:

Many thanks to all of these wonderful developers!

See Acknowledgements.pdf for licenses.

⭐ Support This Project

You can simply click on the Star to support this project for free. Thank you for your support!

Star History Chart

About

Customize app and dock behaviors in each space

Topics

Resources

Code of conduct

Contributing

Stars

16 stars

Watchers

1 watching

Forks

Releases

Contributors

Languages