Skip to content

carlojacob/game-project-client

Repository files navigation

Tic-Tac-Toe Client

This is the developer documentation for a tic-tac-toe game that refers to an instructor-provided API for user authentication and game storage. Code was primarily written using HTML, SCSS (CSS) and JavaScript on the Atom text-editing platform, along with git and other software.

Github Repository

The Github repository for this project is located here: https://github.com/carlojacob/game-project-client

Wireframes

Initial wireframes are displayed at the following link(s):

User Stories

Tic-Tac-Toe user stories:

  1. As a game player, I want to play tic-tac-toe.
  2. As a first-time player, I want to read Instructions so that I can win tic-tac-toe.
  3. As a first-time user of this game, I want to create a new account so that I can have history of my tic-tac-toe playing.
  4. As a returning player, I want to log into my game account so that I can play more.
  5. As a returning player, I want to see how many games I have won and lost so that I can improve my win percentage.
  6. As a returning player, I want to start a new game or resume a game in progress so that I can continue to play.
  7. As a returning player, I want to change my password occasionally so that my statistics are secure.
  8. As a returning player, I want to log out of my game account so that no one else affects my statistics.

Technologies Used

The following technologies were used to create this project:

  1. HTML.
  2. SCSS.
  3. JavaScript.
  4. JQuery.
  5. Atom.
  6. Git.
  7. Github.
  8. Grunt.
  9. Curl.
  10. AJAX.
  11. Bootstrap.
  12. Instructor-provided API.

Development Process and Problem-Solving

This project started by developing an initial project scope, which was modified as necessary during development:

  1. Developed wireframes for desired user interface.
  2. Made considerations for how the game board would be displayed.
  3. Placed heavy emphasis on meeting project requirements instead of making it "look good". Initially applied minimal SCSS to ensure that the user experience met requirements, and additional styling was added near completion as time permitted.
  4. Placed heavy emphasis on performing new tasks in new branches and making regular commits. Branch names explain what changes were made on that branch, and often include just one commit.
  5. I did not get to many of the stretch goals that I had looked up.

Improvements/Unsolved Problems

The following improvements could be made:

  1. Improvements to interface for user-friendly experience.
  2. Modals for user inputs (authentication information).
  3. Animations on button clicks and game completion, etc.
  4. Add display of game instructions to user.
  5. Provide additional pseudocode for understanding what is being done.
  6. Refactor code in /assets/scripts/game/ui.js to a new events... document for improved readability.
  7. Output additional game data on Game History request.
  8. Game History in tabular format.
  9. Create multiplayer functionality.
  10. Resolve display issues on mobile in landscape orientation.

About

Tic-Tac-Toe application state for project presentation at GA.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published