Build a native macOS application using SwiftUI that provides developers with an ultra-fast and elegant workspace launcher for VS Code and Cursor workspaces.
The primary goal of the application is to allow developers to instantly access and open any workspace from a global keyboard shortcut (⌘ + P) through a beautiful floating command palette interface, similar to Spotlight, Raycast, or Alfred.
The application should be lightweight, production-ready, highly optimized, visually polished, and designed following Apple's Human Interface Guidelines with full support for Light Mode and Dark Mode.
The application should automatically discover and maintain a list of all VS Code and Cursor workspaces stored on the user's Mac.
Supported Sources:
- VS Code workspaces
- Cursor workspaces
- Recently opened projects
- User-defined workspace directories
- Git repositories (optional future enhancement)
The application should:
- Automatically scan configured directories
- Detect newly created workspaces
- Detect renamed workspaces
- Detect deleted workspaces
- Update workspace data in real-time
No manual refresh should be required.
The main experience of the application.
Default shortcut:
⌘ + P
Custom shortcuts should be configurable later.
When the user presses:
⌘ + P
The application displays a floating Spotlight-style panel.
The panel should:
- Appear instantly
- Animate smoothly
- Stay centered on screen
- Support multiple monitors
- Always stay above other windows
The floating panel should contain:
Real-time search with:
- Fuzzy search
- Prefix matching
- Workspace name matching
- Path matching
- Recent usage ranking
Results should update instantly while typing.
Users should be able to fully operate the application without a mouse.
↑ Move Up
↓ Move Down
Enter Open Workspace
Esc Close Panel
⌘ + P Toggle Panel
Tab Select Result
When a workspace is selected:
Use:
code .
for VS Code
or
cursor .
for Cursor
If CLI commands are unavailable:
- Detect installed VS Code application
- Detect installed Cursor application
- Open workspace using macOS APIs
- Open workspace directly via application path
Examples:
/Applications/Visual Studio Code.app
/Applications/Cursor.app
The application should automatically determine the best launch method.
The application should feel:
- Native
- Modern
- Minimal
- Fast
- Professional
- Premium
Inspired by:
- Spotlight
- Raycast
- Arc Browser
- Linear
- Notion
Each workspace item should display:
- Workspace Name
- Project Icon
- Last Opened Time
- Workspace Type
- Favorite Status
Optional:
- Git Branch
- Git Status
- Framework Badge
Examples:
Flutter
React
Node.js
Next.js
Vue
Swift
Rust
Go
Use smooth SwiftUI animations:
- Spring animations
- Fade transitions
- Scale effects
- Hover effects
- Keyboard focus transitions
Target:
120 FPS smooth interactions.
The application must feel instant.
< 100ms
< 10ms
< 200ms
< 100 MB
Implement a dedicated Workspace Cache Engine.
Store:
- Workspace metadata
- Last opened timestamp
- Favorites
- Recent usage
- Search index
The cache should:
- Load immediately on startup
- Update in the background
- Persist across launches
Recommended:
- SQLite
- SwiftData
- Lightweight indexing engine
Implement filesystem monitoring using:
- FSEvents
- DispatchSourceFileSystemObject
Features:
- Detect new workspaces
- Detect deleted workspaces
- Detect renamed workspaces
- Update UI instantly
No manual refresh required.
Allow users to enable:
Launch at Login
When enabled:
- App starts automatically after Mac login
- Runs silently in background
- Appears in Menu Bar
Provide a native macOS Menu Bar application.
Menu options:
- Open Workspace Launcher
- Recent Workspaces
- Favorites
- Settings
- Refresh Cache
- Quit
Pin important workspaces.
Track most-used projects.
Rank projects by:
- Frequency
- Recency
- Launch count
Show:
- Recently used
- Frequently used
- Active development projects
Display:
- Current branch
- Uncommitted changes
- Ahead/Behind status
Automatically detect:
- Flutter
- React
- Next.js
- Node.js
- Vue
- Angular
- Swift
- Rust
- Go
- Python
Allow users to create:
- Work
- Personal
- Client
- Archived
Custom tags.
Responsible for:
- Scanning workspaces
- Detecting changes
- Managing updates
Responsible for:
- Fuzzy search
- Ranking
- Filtering
Responsible for:
- Local persistence
- Fast loading
- Metadata storage
Responsible for:
- Opening VS Code
- Opening Cursor
- Fallback launching
Responsible for:
- Global shortcuts
- Floating panel activation
- Multiple custom shortcuts
- AI workspace recommendations
- Workspace notes
- Workspace groups
- Team-shared workspace collections
- Cloud sync
- Cross-device sync
- Plugin system
- AI-powered project search
Create the fastest, most beautiful, and most developer-friendly workspace launcher for macOS.
The experience should feel like a combination of Spotlight, Raycast, and Cursor, allowing developers to instantly find and open any workspace through a single keyboard shortcut with a native, polished, high-performance SwiftUI experience.