This is a Set Game application made with SwiftUI.
It is my solution of a CS139P course's Programming Assignments 3 and 4, in which it was sought to make an application from scratch.
For this assignment it was intended to implement concepts like:
- MVVM architecture
- SwiftUI's custom Shapes, GeometryReader and ViewBuilder
- Swift's closures and enums.
- SwiftUI's Animations (with matchedGeometryEffect)
The goal of the game is to find collections of cards satisfying the following rule.
- The set rule: Three cards are called a set if, with respect to each of the four attributes, the cards are either all the same or all different.
Set is played with a special deck of cards. Each set card displays a design with four attributes — number, shading, color, and shape — and each attribute assumes one of three possible values.
The full Set deck has eighty-one cards, one for each possible combination of attributes.
For more detailed rules see: Set Game Rules