Skip to content

Latest commit

 

History

History
94 lines (71 loc) · 4.26 KB

FinalProject.md

File metadata and controls

94 lines (71 loc) · 4.26 KB

Final project - Brain Games

Description

With your knowledge about Swift and iOS, your goal for this project will be to build a functional app. This should be a learning experience and a challenge to prove how far you've come during this course.

You will be building a Brain Training app! 🧠💪🏼
Training our brains is a great way to keep our minds active, improve our memory and attention. To read more about how research supports this, I encourage you to read this article.

The game required for this project is a Color Matching game 🌈
Users are shown words of colors (one below the other) and need to identify if the text in the upper word matches the color of the word at the bottom.
This is usually an exercise to demonstrate the Stroop Effect. And one of its goals is to help with brain reaction time.

An example of implementation here.

demo

Learning Outcomes

By completing this project, you should be able to…

  1. Demonstrate proficiency using Swift's basic building blocks.
  2. Follow a set of requirements to build a product.
  3. Build an app with Xcode that users can interact with.

Schedule

From the day this project is assigned, you will have 3 weeks to complete this project. A sample weekly outline is provided to assist you in planning your project.

Important note: “Week 1” refers to the first calendar week of the project being assigned, and subsequent weeks will follow this reference:

  • Week 1: Project assigned, read the project spec, ask any clarifying questions you may have, design how you would implement the project and start the basic UI
  • Week 2: Build out main functionality (game mechanics)
  • Week 3: Fix any remaining bugs, make sure your code has helpful comments, and submit the project!

Requirements

  1. Users are shown two words with the name of a color (words are colored).
  2. Users are asked if the text of first word matches the color in the second word.
  3. Users select an answer: yes or no.
  4. Users get 10 points if they are correct, they get 10 points less if they're wrong.
  5. Users can see a score in the screen.
  6. Users go on for 60 seconds before the game ends.
  7. Users can restart the game.
  8. You can either use SwiftUI or UIKit for the project.
  9. Use Swift's basic building blocks
    • variables & constants
    • custom types (classes, structs or enums)
    • functions
    • control flow
  10. Version control with Github, including a README file

Stretch Challenges

  1. With the same game:

    • Make correct answers cumulative and show the user their streak!
    • Add difficulty levels
    • Include a home screen
  2. Extend your Brain Trainer to include one or more mini games!

    • Add another variation of the Stroop Effect game.

    • Game Add-1: Users have to add 1111 to a random number between 1000 and 8888.

    • A game of your own creation.

Rubric

  • 25 pts Game Mechanics work correctly
  • 10 pts Keeps a score
  • 10 pts Implements a timer
  • 15 pts UI is easy to use and is polished.
  • 15 pts Code Craft - code follows conventions (variable naming, length of methods, code modularity, etc)
  • 15 pts Technical complexity - Makes use of Swift core constructs
  • 5 pts Uploaded to Github with a detailed Readme file
  • 5 pts Timeliness - project turned in on time

Resources

Additional resources that will help with this project, or that can be used as reference

Past Students' work