
Solitairy
A clean, modern, ad-free Solitaire experience with intuitive UI and easy-going gameplay.

Overview
While there are tens of Solitaire apps on the App Store, I found that most suffer from the same issues: aggressive ads, clunky animations, and horrendous design. I wanted to build the "next generation" of Klondike Solitaire—a game that feels more premium than a cheap casino app.
Building Solitairy was a deep dive into advanced SwiftUI layout logic and user experience design. The biggest technical challenge was creating a custom "Accordion" layout engine. Standard stacks cause cards to run off-screen when columns get too long; my engine dynamically calculates spacing based on available vertical height, smoothly compressing the stack so cards remain visible and accessible without scrolling.
I also focused heavily on the "game feel," utilizing Core Haptics to provide subtle, tactile feedback for every card snap and shuffle, creating an ASMR-like experience that sets the app apart from competitors.
Features
- Dynamic Accordion Layout: A custom layout engine that mathematically adjusts card spacing in real-time to fit long columns on any screen size.
- Smart "Lazy" Dragging: An intuitive UX feature that allows users to drag from the empty space below a column to move the stack, solving reachability issues on larger phones.
- Immersive Haptics: Fine-tuned vibration patterns using Core Haptics to simulate the physical sensation of shuffling and dealing cards.
- Context-Aware Hint System: Instead of intrusive tutorials, the app provides subtle, watermark-style hints that appear contextually based on the game state (e.g., suggesting a move when it is available).
- Gamified Economy: A robust achievement system powered by Core Data, featuring unique challenges like "Living on the Edge" (winning with <10% battery) and a daily streak mechanic.
Technologies Used
- Swift
- SwiftUI
- Core Data (for complex statistics, achievements, and game history)
- Core Haptics (for custom vibration patterns)
- Xcode (for development and testing)
- App Store Connect (for app distribution and management)
- TestFlight (for beta testing)