Project notes
Swift Workspace
Reusable Swift workspace engine, platform shells, and optional persistence adapters.
Repository snapshot
- 27Commits
- Jun 2026Updated in snapshot
- MITLicense
- Jun 2026Started
- Swift 97.0%
- Shell 3.0%
Recent commits
Overview
Swift Workspace is a reusable workspace engine for Apple apps that need professional navigation, command palettes, scenes, search, policy, restoration, and platform shells without hardwiring those mechanics to one product. The app keeps ownership of documents, workflow state, analytics, network effects, and persistence writes while the package handles shared workspace behavior.
Highlights
- 01
Typed workspace core
Models routes, route sections, commands, scene requests, search, policy, and restoration with Swift-native types.
- 02
TCA reducer
WorkspaceTCA owns shared workspace state and emits delegate actions for app-owned commands, scenes, and effects.
- 03
macOS shell
MacWorkspaceShell renders custom macOS navigation with floating or edge-to-edge sidebars plus menu command integration.
- 04
iOS and iPadOS shell
IOSWorkspaceShell adapts between stack and split navigation, with command search, badges, shortcuts, and scene handoff.
- 05
Optional persistence
Adds JSON, UserDefaults, file, SQLiteData, and CloudKit contracts only when the app needs them.
- 06
Adoption path
Includes compiled demos, minimal starter apps, custom renderer examples, quickstarts, and release verification docs.
Products
Documentation & getting started
// Package.swift
.package(url: "https://github.com/kylebegeman/swift-workspace", from: "0.1.1"),
// products: WorkspaceCore, WorkspaceTCA, MacWorkspaceShell, IOSWorkspaceShell
- READMEPackage overview, products, install, and release status.
- Mac shell quickstartAdopt the macOS shell renderer.
- iOS shell quickstartAdopt the iOS and iPadOS shell renderer.
- Engine-only quickstartUse the core workspace engine without bundled UI.
- Custom rendererBuild your own renderer over the workspace state.
- 0.1.0 API reviewPublic beta API stability notes.