Complete native rewrite of the web-based SoliCards game as a SwiftUI multiplatform app targeting iOS 17+, iPadOS 17+, and macOS 14+. Three solitaire variants (Klondike, Spider, FreeCell) with full game rules, drag & drop, smart zoom layout, 6 themes, 4 difficulty levels, SwiftData persistence, VoiceOver accessibility, and 57 unit tests. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
41 lines
1.5 KiB
Markdown
41 lines
1.5 KiB
Markdown
# SoliCards
|
|
|
|
Native SwiftUI solitaire card game for **iOS 17+**, **iPadOS 17+**, and **macOS 14+**.
|
|
|
|
Three classic variants — Klondike, Spider, and FreeCell — with drag & drop, smart zoom layout, six themes, four difficulty levels, and full accessibility support.
|
|
|
|
## Features
|
|
|
|
- **3 game variants:** Klondike, Spider (2-deck), FreeCell (power moves)
|
|
- **4 difficulty levels:** Easy, Medium, Hard, Expert
|
|
- **6 color themes:** Classic Green, Dark Mode, Ocean Blue, Royal Purple, Forest Green, Sunset Orange
|
|
- **12 card back designs** and multiple card face styles
|
|
- **Smart zoom:** cards auto-size to fit any screen and orientation
|
|
- **Drag & drop** with long-press disambiguation and tap-to-move
|
|
- **Landscape optimized:** 30% bigger cards on iOS with scrollable overflow
|
|
- **Auto-save** and game resume via SwiftData
|
|
- **Statistics:** wins, losses, streaks per variant/difficulty
|
|
- **VoiceOver accessible** with Dynamic Type and Reduce Motion support
|
|
- **Keyboard shortcuts:** Cmd+Z (undo), Cmd+N (new game), H (hint)
|
|
- **Zero external dependencies**
|
|
|
|
## Getting Started
|
|
|
|
```bash
|
|
brew install xcodegen
|
|
xcodegen generate
|
|
open SoliCards.xcodeproj
|
|
```
|
|
|
|
Press **Cmd+R** to build and run.
|
|
|
|
See [SETUP.md](SETUP.md) for full build commands and project structure.
|
|
|
|
## Architecture
|
|
|
|
MVVM + Protocol-Oriented Strategy pattern. See [ARCHITECTURE.md](ARCHITECTURE.md).
|
|
|
|
## Origin
|
|
|
|
Ported from a web-based JavaScript solitaire game using the [XCode-Claude-Workflow](https://git.istratai.cloud/aj/XCode-Claude-Workflow) methodology.
|