https://github.com/systemsoftware/app-pane
macOS 26 Launchpad replacement (works with any macOS version supported by Electron)
https://github.com/systemsoftware/app-pane
launcher luanchpad macos
Last synced: 8 months ago
JSON representation
macOS 26 Launchpad replacement (works with any macOS version supported by Electron)
- Host: GitHub
- URL: https://github.com/systemsoftware/app-pane
- Owner: systemsoftware
- License: mit
- Created: 2025-06-12T18:29:54.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-07-17T18:57:39.000Z (11 months ago)
- Last Synced: 2025-08-06T15:58:08.185Z (10 months ago)
- Topics: launcher, luanchpad, macos
- Language: HTML
- Homepage:
- Size: 9.41 MB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# App Pane
**App Pane** is a macOS Electron application that acts as a visual app launcher and manager. It scans installed applications, allows for quick launching, pinning, hiding, and organizing apps, and includes cache management, icon indexing, and a customizable global shortcut.
## ๐ Features
* ๐ Automatically scans and indexes installed macOS applications.
* ๐ Pin or unpin apps for quick access.
* ๐ Hide apps from view (but keep them searchable).
* ๐ผ๏ธ Caches and displays app icons.
* ๐๏ธ Reorder apps manually or alphabetically (AโZ / ZโA).
* ๐ Automatic cache reloading every 5 minutes.
* ๐ ๏ธ Reindex apps or delete the cache via the UI.
* ๐งญ Open apps or reveal them in Finder.
* ๐๏ธ Dock icon visibility toggle.
* โจ๏ธ Global shortcut support to quickly toggle the app's visibility.
## ๐งฑ Built With
* [Electron](https://www.electronjs.org/)
* [Node.js](https://nodejs.org/)
* [electron-prompt](https://www.npmjs.com/package/electron-prompt)
## ๐ Folder Structure
```
AppPane/
โโโ index.html # Main UI
โโโ preload.js # Preload script for IPC
โโโ main.js # Main Electron process (provided above)
โโโ update # Updater executable (copied to temp folder)
โโโ prompt.css # Custom styling for prompts
```
## ๐ฅ๏ธ Requirements
* macOS (due to `open` and `Finder`-specific features)
* Node.js & npm installed
* Electron (via `npm install`)
## ๐ ๏ธ Installation
```bash
git clone https://github.com/systemsoftware/app-pane.git
cd app-pane
npm install
```
## ๐ Run the App
```bash
npm start
```
## ๐ง Customization
* To **hide the dock icon**, a file named `hide-dock` is placed in `userData` path (`~/Library/Application Support/App Pane/`).
* To **set a global shortcut**, a `shortcut` file is created in the same directory.
* Use the right-click menu inside the app to modify these settings.
## ๐พ App Cache & Icon Storage
* App metadata:
`~/Library/Application Support/App Pane/apps.json`
* Cached app icons:
`~/Library/Application Support/App Pane/app-icons/`
## โ ๏ธ Safety Notes
* On reindexing or deleting cache, the app will relaunch or exit automatically.
* Cached icon folders and metadata files will be removed.
## ๐งช Development Notes
* The updater is a separate executable copied to a temp directory and invoked as needed.
* IPC handlers manage app data, UI actions, and user input securely and asynchronously.
* Reloading happens every 5 minutes to reflect app changes.
## ๐ Global Shortcut Help
To define a shortcut (e.g., `Cmd+Shift+A`), refer to [Electron Accelerator Docs](https://www.electronjs.org/docs/latest/api/accelerator#available-modifiers)
## ๐ License
MIT License