Skip to content

Latest commit

 

History

History
30 lines (17 loc) · 1.25 KB

README.md

File metadata and controls

30 lines (17 loc) · 1.25 KB

Set

A fully functional game of SET written in SwiftUI for iOS. Mid-term project for Stanford CS193p.

Stack

  • Functional UI programming using SwiftUI 2.0 and Swift 5.5
  • Data architecture using MVC
  • Motion using SwiftUI animation library

Features

Deck and Discard Pile

Keep track of discraded cards from the game and deal new cards from the undealt pile.

img_1.png

Set Matching

An efficient alogrithm to identify a matching Set and help the player progress.

img_2.png

Screenshots rendered using rframe.

Thoughts

Architecting the app from scratch was particularly challening as there was no real road-map or implementation guidelines. The hints, however, did guide me through what I needed a head of implementing a particulary feature which helped me create a mental model of the implementation priority list. Animation took the longest to implement as I wasn't well-wersed with the unique animation system of SwiftUI. The set matching alogrithm took many iterations to reach a fast, perfomant and functional state, but in the end I am extremely proud of the outcome I was able to achieve in 2 weeks after only having used Swift and SwiftUI for 2 weeks.