FastTab is a small macOS command bar for jumping between browser tabs, bookmarks, history, and Finder locations without stopping to hunt through windows.
This app is indie-made. The official build, updates, and license support are available at fasttab.theindie.app. If FastTab is useful to you, please buy it there.
This repository is source-available, not an open source project in the usual maintenance-contract sense. I made the source available so curious users can inspect it, learn from it, build a local copy, or send focused fixes. I am not promising free support, a public roadmap, or ongoing maintenance work for every local build someone creates.
The version sold on the website is the supported product. It has the release packaging, update feed, signing/notarization, and production license configuration. A local build from this repository is best treated as a development build.
- Search open tabs, bookmarks, and browser history from supported browsers.
- Switch directly to a selected browser tab.
- Cycle recent tabs by pressing the FastTab shortcut repeatedly.
- Search Finder history and jump back to recent folders.
- Swipe or use row actions to close tabs, delete supported items, or copy links.
- Configure which supported apps are included.
Supported sources in the current codebase include Chrome-family browsers, Safari, Microsoft Edge, and Finder.
- macOS 14 or newer.
- Xcode with Swift 6 support.
- Accessibility permission for the global shortcut and window control.
- Automation permission for controlling supported browsers and Finder.
- Full Disk Access may be needed if browser history or bookmarks do not appear.
Clone the repo and enter it:
git clone <repo-url>
cd command-bar-macosResolve dependencies:
swift package resolveRun the test suite:
swift testRun a local development build:
swift run FastTabOn first launch, macOS may ask for permissions. If results are empty or actions fail, open System Settings and check:
- Privacy & Security -> Accessibility: allow FastTab or the terminal/Xcode process running it.
- Privacy & Security -> Automation: allow FastTab to control the browsers/Finder you want to use.
- Privacy & Security -> Full Disk Access: allow the running app or development tool if browser history/bookmark databases are blocked.
The local SwiftPM build is useful for development and inspection, but it is not the same as the signed release build.
- Production checkout, license activation, and app updates are configured for the official distributed app.
- The repo does not include private signing keys, notarization credentials, or release automation secrets.
- Official license keys are meant for the official build from fasttab.theindie.app, not arbitrary local development bundles.
- Sparkle update metadata exists in the product, but local builds should not be expected to update like the official app.
For personal development, swift run FastTab is the simplest path. If you want a standalone .app, you will need to provide your own bundle identifier, signing setup, Info.plist values, and packaging flow.
The release app uses configuration keys for things like checkout URLs, license validation, support links, and Sparkle updates. Those production values are intentionally part of the official distribution path, not a promise that every source checkout is a supported release build.
Maintainers can create a source release tag from a clean, up-to-date main branch:
scripts/release.sh 1.5.2The script runs swift test, creates an annotated tag, and pushes it to origin. A GitHub Actions workflow then creates a GitHub Release entry with generated notes for the pushed version tag.
This does not build, sign, notarize, package, or update Sparkle appcast metadata for the official app distribution.
Small, practical fixes are welcome. The most useful contributions are reproducible bug reports, focused patches, and tests around behavior that changed. Large feature requests or support expectations are better directed through the official product channel after purchasing the app.
Copyright is retained by the app author. Unless a separate written license says otherwise, this repository does not grant an open source license to copy, redistribute, resell, repackage, or publish modified versions of FastTab.
You may read the source, build it locally for personal evaluation, and submit focused fixes. If you want to use FastTab as a product, please use the official build from fasttab.theindie.app.
If you are using the official app, use the support path linked from fasttab.theindie.app. If you are running a local build, please assume you own the local build environment and any changes you make to it.