{"id":25591027,"url":"https://github.com/amebalabs/swiftkey","last_synced_at":"2026-06-18T18:32:29.589Z","repository":{"id":277766788,"uuid":"921792287","full_name":"amebalabs/SwiftKey","owner":"amebalabs","description":"Hackable launcher for macOS","archived":false,"fork":false,"pushed_at":"2025-06-30T21:06:43.000Z","size":6430,"stargazers_count":37,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-10T18:03:16.882Z","etag":null,"topics":["app","launcher","macos","productivity"],"latest_commit_sha":null,"homepage":"https://swiftkey.app/","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/amebalabs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-01-24T16:17:04.000Z","updated_at":"2025-10-29T17:53:18.000Z","dependencies_parsed_at":"2025-03-04T18:27:01.203Z","dependency_job_id":"56cbb22c-e4e0-4fb7-857d-95c39577662e","html_url":"https://github.com/amebalabs/SwiftKey","commit_stats":null,"previous_names":["amebalabs/swiftkey"],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/amebalabs/SwiftKey","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amebalabs%2FSwiftKey","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amebalabs%2FSwiftKey/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amebalabs%2FSwiftKey/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amebalabs%2FSwiftKey/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/amebalabs","download_url":"https://codeload.github.com/amebalabs/SwiftKey/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amebalabs%2FSwiftKey/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34503507,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-18T02:00:06.871Z","response_time":128,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["app","launcher","macos","productivity"],"created_at":"2025-02-21T09:33:54.708Z","updated_at":"2026-06-18T18:32:29.570Z","avatar_url":"https://github.com/amebalabs.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![GitHub license](https://img.shields.io/github/license/amebalabs/SwiftKey.svg)](https://github.com/amebalabs/SwiftKey/blob/master/LICENSE)\n[![Latest Release](https://img.shields.io/github/v/release/amebalabs/SwiftKey)](https://github.com/amebalabs/SwiftKey/releases/latest)\n[![macOS](https://img.shields.io/badge/macOS-15.0+-blue.svg)](https://www.apple.com/macos/)\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://swiftkey.app\"\u003e\u003cimg width=\"128\" height=\"128\" src=\"docs/logo.png\" style=\"filter: drop-shadow(0px 2px 4px rgba(80, 50, 6, 0.2));\"\u003e\u003c/a\u003e\n    \u003ch1 align=\"center\"\u003e\u003ccode style=\"text-shadow: 0px 3px 10px rgba(8, 0, 6, 0.35); font-size: 3rem; font-family: ui-monospace, Menlo, monospace; font-weight: 800; background: transparent; color: #4d3e56; padding: 0.2rem 0.2rem; border-radius: 6px\"\u003eSwiftKey\u003c/code\u003e\u003c/h1\u003e\n    \u003ch4 align=\"center\" style=\"padding: 0; margin: 0; font-family: ui-monospace, monospace;\"\u003eHackable Launcher\u003c/h4\u003e\n    \u003ch6 align=\"center\" style=\"padding: 0; margin: 0; font-family: ui-monospace, monospace; font-weight: 400;\"\u003eRight at your fingertips\u003c/h6\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://swiftkey.app\"\u003e\u003cimg src=\"docs/demo.gif\" style=\"filter: drop-shadow(0px 2px 4px rgba(80, 50, 6, 0.2));\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n## Overview\n\nSwiftKey is a powerful macOS productivity tool that provides quick access to applications, shortcuts, and custom actions through customizable keyboard shortcuts and an elegant overlay interface.\n\n### Installation\n\n- Download the app from the [Releases](https://github.com/amebalabs/SwiftKey/releases/latest) and drag it to your `Applications` folder\n- ...or install with Homebrew:\n```bash\n brew tap melonamin/formulae\n brew install swiftkey\n```\n\n## Features\n- 🎯 Multiple overlay styles:\n  - Panel mode with horizontal/vertical layouts\n  - HUD mode for a compact interface\n  - Menu bar mode for minimal interference\n  - Corner Toast for unobtrusive notifications\n- ⌨️ Fully keyboard-driven interface\n- 🔧 YAML-based configuration\n- 🔄 Dynamic menu generation\n- 🚀 Support for various action types:\n  - Launch applications\n  - Open URLs\n  - Run shell commands\n  - Execute Apple Shortcuts\n- 🎨 SF Symbols integration for menu icons\n- 🔍 Deep linking support\n- 📦 Automatic updates with beta channel support\n\n## Installation\n1. Download the latest release from the Releases page\n2. Move SwiftKey.app to your Applications folder\n3. Launch SwiftKey and follow the onboarding process\n\n## Configuration\nSwiftKey uses YAML for configuration. Here's a comprehensive set of examples demonstrating all available options and common use cases:\n\n### Basic Configuration\n\n```yaml\n# Simplest example - just key, title, and action\n- key: \"c\"\n  title: \"Launch Calculator\"\n  action: \"launch:///System/Applications/Calculator.app\"\n\n# With custom icon (from SF Symbols)\n- key: \"n\"\n  icon: \"note.text\"\n  title: \"Launch Notes\"\n  action: \"launch:///System/Applications/Notes.app\"\n```\n\n### Submenu Examples\n\n```yaml\n# Basic submenu\n- key: \"b\"\n  icon: \"bookmark.fill\"\n  title: \"Bookmarks\"\n  submenu:\n    - key: \"t\"\n      title: \"TechCrunch\"\n      action: \"open://https://techcrunch.com\"\n    - key: \"v\"\n      title: \"The Verge\"\n      action: \"open://https://www.theverge.com\"\n\n# Nested submenus\n- key: \"d\"\n  icon: \"folder.fill\"\n  title: \"Development\"\n  submenu:\n    - key: \"e\"\n      title: \"Editors\"\n      submenu:\n        - key: \"v\"\n          title: \"VS Code\"\n          action: \"launch:///Applications/Visual Studio Code.app\"\n        - key: \"x\"\n          title: \"Xcode\"\n          action: \"launch:///Applications/Xcode.app\"\n    - key: \"t\"\n      title: \"Terminal\"\n      action: \"launch:///System/Applications/Terminal.app\"\n```\n\n### Batch Mode\n\n```yaml\n# Batch mode - all items in submenu will execute when selecting this item\n# Using batch: true flag\n- key: \"s\"\n  icon: \"bolt.fill\"\n  title: \"Start Workflow\"\n  batch: true  # Execute all submenu items at once\n  submenu:\n    - key: \"1\"\n      title: \"Open Mail\"\n      action: \"launch:///System/Applications/Mail.app\"\n    - key: \"2\"\n      title: \"Open Calendar\"\n      action: \"launch:///System/Applications/Calendar.app\"\n    - key: \"3\"\n      title: \"Open Slack\"\n      action: \"launch:///Applications/Slack.app\"\n\n# Alternative: Press and hold Option (⌥) key when selecting any submenu\n# to execute all items in batch mode\n```\n\n### Sticky Items\n\n```yaml\n# Sticky items - UI stays open after execution\n- key: \"v\"\n  icon: \"volume.3.fill\"\n  title: \"Volume Up\"\n  action: \"shell://osascript -e 'set volume output volume (output volume of (get volume settings) + 10)'\"\n  sticky: true  # UI stays open after executing this action\n\n- key: \"m\"\n  icon: \"volume.fill\"\n  title: \"Mute Toggle\"\n  action: \"shell://osascript -e 'set volume output muted (not output muted of (get volume settings))'\"\n  sticky: true\n\n# Alternative: Press and hold Option (⌥) key when selecting any item\n# to invert its sticky behavior (non-sticky items become sticky and vice versa)\n```\n\n\n### Notifications\n\n```yaml\n# Show notification after execution\n- key: \"r\"\n  icon: \"text.append\"\n  title: \"Run Script\"\n  action: \"shell://~/scripts/update_database.sh\"\n  notify: true  # Show notification when script completes\n```\n\n### Hidden Items\n\n```yaml\n# Hidden items - not shown in UI but can be activated with key or hotkey\n- key: \"h\"\n  title: \"Hidden Action\"\n  action: \"shell://say 'Secret action activated'\"\n  hidden: true\n  hotkey: \"cmd+shift+h\"\n\n# Single hidden item in submenu will still be shown despite being hidden\n- key: \"s\"\n  title: \"Special Menu\"\n  submenu:\n    - key: \"x\"\n      title: \"Only Item (Hidden but Still Shown)\"\n      action: \"shell://say 'I am shown because I am the only item in this submenu'\"\n      hidden: true\n```\n\n### Dynamic Menus\n\n```yaml\n# Dynamic menu - content generated by a script\n- key: \"p\"\n  icon: \"terminal\"\n  title: \"Running Processes\"\n  action: \"dynamic://dynamic_menu.sh\"\n```\n\n### Global Hotkeys\n\n```yaml\n# Global hotkey for direct action\n- key: \"c\"\n  title: \"Launch Calculator\"\n  action: \"launch:///Applications/Calculator.app\"\n  hotkey: \"cmd+ctrl+c\"  # Global shortcut: Cmd+Ctrl+C\n\n# Global hotkey to open specific submenu\n- key: \"d\"\n  title: \"Development Tools\"\n  hotkey: \"cmd+shift+d\"  # Global shortcut: Cmd+Shift+D\n  submenu:\n    - key: \"1\"\n      title: \"VS Code\"\n      action: \"launch:///Applications/Visual Studio Code.app\"\n    - key: \"2\"\n      title: \"Terminal\"\n      action: \"launch:///System/Applications/Terminal.app\"\n```\n\n### Practical Use Cases\n\n```yaml\n# Developer Workflow\n- key: \"d\"\n  icon: \"hammer.fill\"\n  title: \"Developer Tools\"\n  submenu:\n    - key: \"c\"\n      title: \"VS Code\"\n      action: \"launch:///Applications/Visual Studio Code.app\"\n    - key: \"g\"\n      title: \"Git Operations\"\n      submenu:\n        - key: \"s\"\n          title: \"Git Status\"\n          action: \"shell://'cd ~/projects/current \u0026\u0026 git status'\"\n          notify: true\n        - key: \"p\"\n          title: \"Git Pull\"\n          action: \"shell://'cd ~/projects/current \u0026\u0026 git pull'\"\n          notify: true\n    - key: \"b\"\n      title: \"Build Project\"\n      action: \"shell://'cd ~/projects/current \u0026\u0026 make build'\"\n      notify: true\n    - key: \"t\"\n      title: \"Run Tests\"\n      action: \"shell://'cd ~/projects/current \u0026\u0026 make test'\"\n      notify: true\n\n# System Administration\n- key: \"s\"\n  icon: \"gear\"\n  title: \"System Tools\"\n  submenu:\n    - key: \"d\"\n      title: \"Show Disk Usage\"\n      action: \"shell://'df -h | grep /dev/disk1s1'\"\n      sticky: true\n      notify: true\n    - key: \"m\"\n      title: \"Show Memory Usage\"\n      action: \"shell://'top -l 1 | grep PhysMem'\"\n      sticky: true\n      notify: true\n    - key: \"n\"\n      title: \"Network Tools\"\n      submenu:\n        - key: \"i\"\n          title: \"External IP\"\n          action: \"shell://'curl -s ifconfig.me'\"\n          sticky: true\n          notify: true\n        - key: \"p\"\n          title: \"Ping Google\"\n          action: \"shell://'ping -c 4 google.com'\"\n          sticky: true\n          notify: true\n    - key: \"r\"\n      title: \"Restart Services\"\n      batch: true\n      submenu:\n        - key: \"1\"\n          title: \"Restart DNS\"\n          action: \"shell://'sudo killall -HUP mDNSResponder'\"\n          notify: true\n        - key: \"2\"\n          title: \"Flush DNS Cache\"\n          action: \"shell://'sudo dscacheutil -flushcache'\"\n          notify: true\n\n# Quick Actions\n- key: \"q\"\n  icon: \"bolt.fill\"\n  title: \"Quick Actions\"\n  submenu:\n    - key: \"e\"\n      title: \"Empty Trash\"\n      action: \"shell://'osascript -e \\\"tell application Finder to empty trash\\\"'\"\n      notify: true\n    - key: \"c\"\n      title: \"Copy SSH Key\"\n      action: \"shell://'pbcopy \u003c ~/.ssh/id_rsa.pub \u0026\u0026 echo \\\"SSH key copied to clipboard\\\"'\"\n      notify: true\n    - key: \"s\"\n      title: \"Take Screenshot\"\n      action: \"shell://'screencapture -i ~/Desktop/screenshot-$(date +%Y%m%d-%H%M%S).png'\"\n      notify: true\n```\n\n## Action Types\n- `launch://` — Launch applications\n- `open://` — Open URLs\n- `shell://` — Execute shell commands\n- `shortcut://` — Run Apple Shortcuts\n- `dynamic://` — Generate dynamic menus\n\n## Menu Item Properties\n- `key` — Single character trigger key\n- `icon` — SF Symbol name or omit for automatic icons\n- `title` — Display title\n- `action` — Action to execute\n- `sticky` — Keep overlay open after execution (optional). Alternative: hold ⌥ (Option) key to invert the sticky behavior.\n- `notify` — Show notification after execution (optional)\n- `batch` — Execute all submenu items (optional). Alternative: hold ⌥ (Option) key for batch execution.\n- `hidden` — Item is not shown in UI but can be triggered by key or hotkey (optional, defaults to false). Note: If a submenu contains only a single hidden item, it will still be shown.\n- `submenu` — Nested menu items (optional)\n- `hotkey` — Global keyboard shortcut (optional)\n\n## Hotkey Formats\nSwiftKey allows you to assign global hotkeys to menu items. Hotkeys work even when the overlay is not visible.\n\nSupported hotkey formats:\n- Modifiers: `cmd`, `ctrl`, `alt`, `shift`\n- Keys: letters, numbers, function keys (f1-f12), arrows, and special keys\n- Examples:\n  - `cmd+shift+a`\n  - `ctrl+alt+p`\n  - `cmd+f12`\n  - `shift+space`\n\nHotkeys can:\n1. Execute actions directly — work globally without showing the overlay\n2. Open specific submenus\n\n## Deep Linking\nSwiftKey supports deep linking through the swiftkey:// URL scheme:\n```swiftkey://open?path=a,b,c```\n\nThis opens the menu and navigates through the specified path.\n\n## License\n\nThis project is licensed under the MIT License - see the LICENSE file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famebalabs%2Fswiftkey","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Famebalabs%2Fswiftkey","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famebalabs%2Fswiftkey/lists"}