Add SimpleTopBar menu bar app with collapsible background app list

This commit is contained in:
2026-09-26 22:37:09 +08:00
commit 41a5917b42
12 changed files with 843 additions and 0 deletions
+46
View File
@@ -0,0 +1,46 @@
# SimpleTopBar
A native macOS menu bar app that shows a compact top bar with every app that is
running on your Mac, split into two sections:
- **Apps** — regular apps that live in the Dock.
- **Background Apps** — accessory/agent apps without a Dock icon. This section
is a **dropdown**: it stays collapsed to a single header, and when you expand
it only the first few apps are shown. The rest are hidden behind a
**Show N more** row so the list never overflows the panel.
Click any row to activate the app, or right-click for Activate / Hide / Quit.
## Install with Homebrew
```bash
brew tap TZGyn/tap https://gitea.tzgyn.dev/TZGyn/homebrew-tap.git
brew trust TZGyn/tap
brew install --cask simpletopbar
```
The tap is hosted on Gitea, so the full URL is required. Homebrew may print an
"Unsupported tap" warning — it's harmless.
## Build from source
```bash
swift build # debug build
swift run SimpleTopBar # run from terminal (app appears in the menu bar)
swift run SimpleTopBar --self-test # headless check of the dropdown logic
./build-app.sh 0.1.0 # release build + SimpleTopBar.app bundle + icon + codesign
./release.sh 0.1.0 # build-app.sh + dist/SimpleTopBar.zip + sha256
```
## Around the Background dropdown
The background section is collapsed by default. Expanding it reveals
`AppListModel.backgroundPageSize` (5) apps at a time; when more are running a
**Show N more** button reveals the next page. Collapsing resets the page.
## Releases
`./release.sh <version>` builds and zips the app to `dist/SimpleTopBar.zip` and
prints its sha256. Tag `v<version>`, attach the zip to a release on the Gitea
repo, and bump `version`/`sha256` in the cask in
[TZGyn/homebrew-tap](https://gitea.tzgyn.dev/TZGyn/homebrew-tap).