This is a personal project that I started so I could learn (and form an educated opinion about) Swift. I chose to re-implement parts of the UI from iOS' SpringBoard.app because I admire the design, and it's a more complex and stateful UI than I had attempted on iOS. There's still some missing features, and room for improvement in the code. I've moved onto other projects for the moment, but I plan to revisit this code again.
Click on the image below for a quick YouTube screencast:
Not Yet Implemented
- Model layer / persistence
- Dragging an app on another app to create a folder
- Multiple pages of apps at the root level and in folders
Areas For Improvement
- Drag and drop abstraction
- Clean up and simplify collection view layouts
- Unit tests
- Animation / transition polish