ActionHub is an iOS app for creating, organizing, and running reusable actions β with deep system integration through App Intents, WidgetKit, Core Spotlight, Live Activities, and deep links.
Built with SwiftUI, SwiftData, and MVVM.
| Home | Detail | Widget | Shortcuts |
|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
Only features that are implemented in the current codebase:
| Feature | Description |
|---|---|
| Actions library | Browse, search, create, and delete actions from the home screen |
| Favorites | Star actions; filter the list via deep links (/favorites) |
| Action detail | View metadata, run history, deep/universal links, run and favorite actions |
| Copy links | Copy deep link and universal link URLs from the detail screen |
| SwiftData persistence | Action, Category, and ExecutionHistory models with App Group storage |
| App Intents | Create, run, delete, duplicate, favorite, and open actions |
| App Shortcuts | Siri phrases registered via ActionHubAppShortcuts |
| Interactive widget | Favorite Actions widget with run and unfavorite buttons |
| Live Activities | Lock Screen and Dynamic Island UI when an action runs |
| Core Spotlight | Actions indexed for system search; tap opens the app |
| Deep links | Custom URL scheme actionhub:// |
| Universal Links | https://actionhub.app/... parsing (AASA template included; hosting required for production) |
See ROADMAP.md for action editing UI, category management, unit tests, and more.
ActionHub uses MVVM with a shared data layer:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β ActionHub (App) ActionHubWidget (Extension) β
β βββββββββββββββ βββββββββββββββββββββββββββ β
β β Views β β Widget + Live Activity UI β β
β β ViewModels β βββββββββββββ¬ββββββββββββββ β
β ββββββββ¬βββββββ β β
β β β β
β βββββββββββββββ¬ββββββββββββββββ β
β βΌ β
β βββββββββββββββββββ β
β β ActionRepository β (Shared) β
β ββββββββββ¬βββββββββ β
β βΌ β
β βββββββββββββββββββ β
β β SwiftData store β App Group β
β βββββββββββββββββββ β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
- Views β SwiftUI only; minimal logic
- ViewModels β
@Observable,@MainActorpresentation state - ActionRepository β Single entry point for mutations, side effects (Spotlight, widgets, shortcuts, Live Activities)
- Shared/ β Code compiled into both the app and widget extension
Full details: Docs/Architecture.md
ActionHub/
βββ ActionHub/ Main app (Views, ViewModels, App entry)
βββ ActionHubWidget/ Widget extension + Live Activity UI
βββ Shared/ Cross-target models, services, intents, utilities
βββ Config/ Info.plist supplements, AASA template
βββ ActionHubTests/ Test folder scaffold (not wired to an Xcode test target yet)
βββ Docs/ Project documentation
βββ .github/ Issue templates, PR template, CI workflow
βββ ActionHub.xcodeproj/
βββ PROJECT_RULES.md Internal development conventions
βββ ROADMAP.md
βββ CHANGELOG.md
βββ CONTRIBUTING.md
βββ CODE_OF_CONDUCT.md
βββ SECURITY.md
| Requirement | Version |
|---|---|
| macOS | Sonoma or later (for Xcode 16) |
| Xcode | 16.0+ |
| iOS deployment target | 18.0 |
| Swift | 5.0 (project setting) |
Simulator or device running iOS 18+.
git clone https://github.com/khansadaf/ActionHub.git
cd ActionHubopen ActionHub.xcodeprojSelect the ActionHub scheme (not ActionHubWidgetExtension alone).
Update signing to your team in Xcode:
- Select the ActionHub target β Signing & Capabilities
- Select your Team
- Repeat for ActionHubWidgetExtension
The project uses:
- Bundle ID:
com.sadaf.ActionHub - App Group:
group.com.sadaf.ActionHub - Associated domains:
actionhub.app,www.actionhub.app
Change these if you fork the project for your own distribution.
- Scheme: ActionHub
- Destination: any iOS 18+ simulator or device
- Press βR
xcodebuild \
-scheme ActionHub \
-destination 'platform=iOS Simulator,name=iPhone 16' \
buildThe widget extension is embedded in the main app. After installing, add the Favorite Actions widget from the Home Screen widget gallery. Live Activities appear when you run an action (requires Live Activities enabled in Settings).
| Document | Description |
|---|---|
| Docs/Architecture.md | MVVM layout, data flow, targets |
| Docs/SwiftData.md | Models and persistence |
| Docs/AppIntents.md | Intents, entities, shortcuts |
| Docs/Widgets.md | Favorite Actions widget |
| Docs/LiveActivities.md | ActivityKit integration |
| Docs/Spotlight.md | Core Spotlight indexing |
| Docs/DeepLinks.md | Custom scheme and Universal Links |
| Docs/Siri.md | App Shortcuts and Siri phrases |
See ROADMAP.md for completed work, in-progress items, and planned features.
Contributions are welcome. Please read CONTRIBUTING.md and CODE_OF_CONDUCT.md before opening a pull request.
This project is licensed under the MIT License.



