X's and O's is a 3*3 two player game. This website has been created to allow a player to play against the computer. The website is easy to navigate through buttons that lead to a game area, rules section, and feedback form.
The deployed website can be found here.
- The website is easy to navigate and user friendly.
- The website is interactive for the user and is responsive on mutiple devices ranging from mobile to desktop.
- The website doesn't have a conflicting colour scheme making it easy to view.
- To provide a feedback section for users to submit any comments to assist with the sites future development.
- To provide the user with an easy to find rule section to explain how the game works.
- As a player, I want the website to be easy to navigate between pages.
- As a player, I want the rules to be easily accessable.
- As a player, I want the game to be user friendly.
- As a player, I want the game to work on multiple devices.
- As a player, I want the game to be fun and engaging.
The main font used in the body of this site is EB Garamond with a back up font of serif it fails to load or be imported correctly. The font used for headings is Cairo with a backup of Sans Serif.
Balsamiq was used to design the wireframes used to design the layout of the website and the location of the sites elements and functions.
Page View | Wireframe |
---|---|
Desktop View | |
Mobile View Game Area |
|
Mobile View Home and Feedback Pages |
- The website was designed mobile first.
- The website has been designed to be responsive across all devices.
- The heading contaings the site name and is present on every game page.
- Google Fonts
- Google Fonts was used to import the fonts of EB Garamond and Cairo to the style.css file. These fonts were used throughout the website.
- Font Awesome
- Font Awesome was used to add icons in order to create a better visual experience for UX purposes.
- GitPod
- GitPod was used for writing code, committing, and then pushing to GitHub.
- GitHub
- GitHub was used to store the project after pushing.
- Balsamiq
- Balsamiq was used to create the mobile and desktop wireframes during the design phase of the project.
- Am I Responsive?
- Am I Responsive was used in order to see responsive design throughout the process.
- Responsive Design Checker
- Responsive Design Checker was used in the testing process to check responsiveness on various devices.
- Chrome DevTools
- Chrome DevTools was used during development process for code review and to test responsiveness.
- W3C MarkUp Validator
- W3C Markup Validator was used to validate the HTML code.
- W3C CSS Validator
- W3C CSS Validator was used to validate the CSS code.
- JSHint
- The JSHints JavaScript Code Quality Tool was used to validate the site's JavaScript code.
-
As a player, I want the website to be easy to navigate between pages.
- The buttons on the site allow easy navigation across the site.
- The heading is also a link back to all the home page.
-
As a player, I want the rules to be easily accessable.
- This has been achieved through a Pop-up button on the home screen.
-
As a player, I want the game to be user friendly.
- The games design was kept simple and and easy to use with basic controls.
-
As a player, I want the game to work on multiple devices.
- The Game is responsive on multiple screen sizes.
-
As a player, I want the game to be fun and engaging.
- The sites clours have been chosen to compliment each other.
- The colours stay consistent throughout the sites pages.
- The score is displayed below the playing area.
- Browser Compatability
Browser | Outcome | Pass/Fail |
---|---|---|
Google Chrome | No appearance, responsiveness nor functionality issues. | Pass |
Safari | No appearance, responsiveness nor functionality issues. | Pass |
Mozilla Firefox | No responsiveness nor functionality issues. | Pass |
Microsoft Edge | No appearance, responsiveness nor functionality issues. | Pass |
- Device compatibility (responsiveness)
Device | Outcome | Pass/Fail |
---|---|---|
Laptop | No appearance, responsiveness nor functionality issues. | Pass |
Mac | No appearance, responsiveness nor functionality issues. | Pass |
iPad | No appearance, responsiveness nor functionality issues. | Pass |
iPad | No appearance, responsiveness nor functionality issues. | Pass |
iPhone XR | No appearance, responsiveness nor functionality issues. | Pass |
iPhone SE | No appearance, responsiveness nor functionality issues. | Pass |
-
W3C CSS Validator found no errors or warnings on my CSS.
-
There were no errors found when passing code through the Html Validator on any of the pages.
-
On the code validator sites I tested using both the sites URL's and by passing the code through the generator to ensure no errors were present.
Code | Page | Score |
---|---|---|
CSS | Site Wide | |
HTML | Home Page | |
HTML | Feedback Form | |
HTML | Game Page | |
JavaScript | Site Wide |
Report | Score | Summary |
---|---|---|
Report | - Used Lighthouse to confirm that the colors and fonts being used in throughout the website are easy to read and accessible. - Was also used to test that the page loads correctly without delay to ensure a positive user experience. |
- General
Feature | Outcome | Pass/Fail |
---|---|---|
Heading | CSS styles work as expected on each page | Pass |
Buttons | Operate as expected | Pass |
- Home Page
Feature | Outcome | Pass/Fail |
---|---|---|
Play Button | Navigates to Game Screen | Pass |
Rules Button | Activates Rules Pop-Up Function | Pass |
Rules Close Button | Closes Pop-Up as expected | Pass |
Feedback Button | Navigates to Feedback Section as expected | Pass |
- Game Page
Feature | Outcome | Pass/Fail |
---|---|---|
Player Choice | Allows player to chose X or O | Pass |
Computer | Playes against the user as Player 2 | Pass |
Reset Button | Clears Game Board and Player Choice when selected | Pass |
- Feedback Form Page
Feature | Outcome | Pass/Fail |
---|---|---|
Form | Require all fields in the right format before submission | Pass |
Send Feedback Button | Submits form when cicked | Pass |
- Error 404 Page
Feature | Outcome | Pass/Fail |
---|---|---|
404 Error Page | Entering an incorrect address brings the player to the 404 error page | Pass |
Back to Game Button | Brings user to Home Page when clicked | Pass |
- Some Features I would like to add in the future include:
- Replacing the alert that promts chosing a player with a pop-up feature.
- Replacing the alerts that signal the game status of won or lost with a pop-up button.
- I would also like to add a best of three feature to the game.
- This website was developed using GitPod, which was then committed and pushed to GitHub using the GitPod terminal.
- The following steps can be used to deploy the website to GitHub Pages from the GitHub Repository:
- Log into GitHub and locate the GitHub Repository.
- At the top the page locate the Settings button on the menu.
- Scroll down the Settings page until you locate the Pages Section.
- Under Source, click the dropdown and select Master Branch.
- The page will refresh and generate the link to the website. The link will be active when the box surrounding the link turns from blue to green.
-
Animate.css was used for css the style seen on the H1 element throughout the site.
-
W3Schools was used as a resource for the creation of my css, JavaScript, and HTML.
-
Stack Overflow Used for assistance with troubleshooting issues.
-
CSS-Tricks used for assistance with improving site responsiveness.
- First I would like to thank my Partner for his love and support throughout the completion of this project.
- I would also like to thank my mentor Marcel for his advice and support.
- My friends for constantly testing the project on their different devices.
- Tutor Assistance for their help with fixing my GitPod following the global crash.
- Code Institute and its Slack community for their support and providing me with the necessary knowledge to complete this project.