Permalink
Browse files

Use markdownlint to fix .md files mostly whitespace

  • Loading branch information...
jordanallain committed Feb 11, 2019
1 parent 2df681d commit a3a8477524dc0e9be940433e64f247502cd2cfd7
Showing with 121 additions and 100 deletions.
  1. +52 −48 README.md
  2. +19 −19 feedback.md
  3. +38 −28 requirements.md
  4. +12 −5 schedule.md
100 README.md
@@ -8,79 +8,83 @@ learn but minutes to master!

## Required Reading

- [Requirements](requirements.md)
- [Feedback](feedback.md)
- [Suggested Schedule](schedule.md)
- [Requirements](requirements.md)
- [Feedback](feedback.md)
- [Suggested Schedule](schedule.md)

## Optional Reading

- [Stretch Goals](stretch_goals.md)
- [Tips](tips.md)
- [Stretch Goals](stretch_goals.md)
- [Tips](tips.md)

## Objectives

By the time you submit this project, developers will have covered new ground in
many of the big themes of the course:

- **Command Line**: Interacting with the computer and navigating the
filesystem from the command line.
- **Source Control**: Managing and interacting with a git repository to store
changes to code.
- **Programming Fundamentals**: Working with objects, constructors, and
events, while learning how to strategically solve problems and resolve
errors.
- **Web Fundamentals**: Structuring, styling, and animating documents within
a browser; responding to actions your users take and the data they input
into the browser.
- **Browser Applications**: Using AJAX to connect to a back-end application.
- **Server Applications**: We haven't covered a ton of server-side
technologies yet (that's up next), but we learned a bit about how API
endpoints work, and how to get data from them.
- **Security**: With JavaScript closures, scratching the surface of why
security matters.
- **Deployment**: Host a static web site in a managed hosting environment
(GitHub Pages)
- **Products and Teams**: Document your code and your code repository so
others understand what you've built.
- **Command Line**: Interacting with the computer and navigating the
filesystem from the command line.
- **Source Control**: Managing and interacting with a git repository to store
changes to code.
- **Programming Fundamentals**: Working with objects, constructors, and
events, while learning how to strategically solve problems and resolve
errors.
- **Web Fundamentals**: Structuring, styling, and animating documents within
a browser; responding to actions your users take and the data they input
into the browser.
- **Browser Applications**: Using AJAX to connect to a back-end application.
- **Server Applications**: We haven't covered a ton of server-side
technologies yet (that's up next), but we learned a bit about how API
endpoints work, and how to get data from them.
- **Security**: With JavaScript closures, scratching the surface of why
security matters.
- **Deployment**: Host a static web site in a managed hosting environment
(GitHub Pages)
- **Products and Teams**: Document your code and your code repository so
others understand what you've built.

## Goals

At a high level, here are our goals for you in this project:

- **Build a web application from scratch**, without a starter codebase
- Use your programming skills to **map out the game logic for a simple game
like Tic Tac Toe**
- **Separate HTML, CSS, and JavaScript files** in your application
- Build an application **to a spec that someone else gives you**
- **Build a dynamic game that allows a user to play tic tac toe against themself**
- **Craft a ``readme.md`` file that explains your app** to the world
- **Communicate with a back-end** (which we'll provide for you) to store the
state of your game.
- **Build a web application from scratch**, without a starter codebase
- Use your programming skills to **map out the game logic for a simple game
like Tic Tac Toe**
- **Separate HTML, CSS, and JavaScript files** in your application
- Build an application **to a spec that someone else gives you**
- **Build a dynamic game that allows a user to play tic tac toe against themself**
- **Craft a ``readme.md`` file that explains your app** to the world
- **Communicate with a back-end** (which we'll provide for you) to store the
state of your game.

You will be working individually for this project, but we'll be guiding you
along the process and helping as you go. Everyone will get a chance to **be
creative**, and work through some really **tough programming challenges** to get
your feet wet in the world of web development.

## Note
The requirements are for a single player game. One user can sign in, pick a square that will be X and then pick a square that will be O, and repeat. Those who dare will have the
tools to make it **multi-player, and multi-device** – so you can say to someone,
"hand me your phone," load up the game, and play a quick round!

The requirements are for a single player game. One user can sign in, pick a
square that will be X and then pick a square that will be O, and repeat. Those
who dare will have the tools to make it **multi-player, and multi-device** – so
you can say to someone, "hand me your phone," load up the game, and play a
quick round!

## Additional Resources

- [MDN Javascript Docs](https://developer.mozilla.org/en-US/docs/Web/JavaScript)
- [jQuery Docs](http://api.jquery.com)
- [Writing Good User Stories](http://www.mariaemerson.com/user-stories/)
- [Presenting Information Architecture](http://webstyleguide.com/wsg3/3-information-architecture/4-presenting-information.html)
- [Game-Project Issue Queue](https://git.generalassemb.ly/ga-wdi-boston/game-project/issues/new)
- **Please note that an issue template has been added to this repository. This means that when you open an issue here,
the textbox will autofill with a helpful template outlining important information to add to your issue. Not only
will adhering to this format bring a smile to all of our faces but it *will* bring clarity to your issue and get it
resolved *faster.***
- [MDN Javascript Docs](https://developer.mozilla.org/en-US/docs/Web/JavaScript)
- [jQuery Docs](http://api.jquery.com)
- [Writing Good User Stories](http://www.mariaemerson.com/user-stories/)
- [Presenting Information Architecture](http://webstyleguide.com/wsg3/3-information-architecture/4-presenting-information.html)
- [Game-Project Issue Queue](https://git.generalassemb.ly/ga-wdi-boston/game-project/issues/new)
- Please note that an issue template has been added to this repository.
This means that when you open an issue here, the textbox will autofill with
a helpful template outlining important information to add to your issue.
Not only will adhering to this format bring a smile to all of our faces but
it *will* bring clarity to your issue and get it resolved *faster.*

## [License](LICENSE)

1. All content is licensed under a CC­BY­NC­SA 4.0 license.
1. All software code is licensed under GNU GPLv3. For commercial use or
1. All content is licensed under a CC­BY­NC­SA 4.0 license.
1. All software code is licensed under GNU GPLv3. For commercial use or
alternative licensing, please contact legal@ga.co.
@@ -5,25 +5,25 @@ feedback on, after you've submitted your project.

## Project Workflow

- **Planning** : Did you complete user stories and wireframes before you
started writing code? Did you create a schedule for yourself to keep your
project on track?
- **Source Control** : Did you use source control to keep track of changes in
your project and make regular 'save points' for yourself?
- **Planning** : Did you complete user stories and wireframes before you
started writing code? Did you create a schedule for yourself to keep your
project on track?
- **Source Control** : Did you use source control to keep track of changes in
your project and make regular 'save points' for yourself?

## Deliverables

- **Technical Requirements** : Does your project meet all the technical
requirements outlined above? Does it run?
- **Software Design/Problem Solving** : How did you break up the functionality
of your application? How did you solve the problems that you encountered
along the way? Do the solutions you came up with make sense, from the
perspective of industry best practices? How well can you defend the choices
you've made?
- **Code Clarity** : Did you follow code style guidance and best practices
covered in class, such as spacing and semantic naming? Did you comment your
code as your s as we have in class?
- **Creativity** : Did you added a personal spin or creative element into your
project submission? Is the finished product something of value to the end
user, in addition to being functional (not just a login button and an index
page)?
- **Technical Requirements** : Does your project meet all the technical
requirements outlined above? Does it run?
- **Software Design/Problem Solving** : How did you break up the functionality
of your application? How did you solve the problems that you encountered
along the way? Do the solutions you came up with make sense, from the
perspective of industry best practices? How well can you defend the choices
you've made?
- **Code Clarity** : Did you follow code style guidance and best practices
covered in class, such as spacing and semantic naming? Did you comment your
code as your s as we have in class?
- **Creativity** : Did you added a personal spin or creative element into your
project submission? Is the finished product something of value to the end
user, in addition to being functional (not just a login button and an index
page)?
@@ -4,18 +4,24 @@ In order to get a satisfactory score, by the time you present your project, you
**must** meet the following requirements:

### Deployment

Be deployed online, where the rest of the world can access it.
1. [ ] Deploy on your public Github page, not Github Enterprise.
1. [ ] Present a working browser game, built by you, hosted and deployed on GitHub Pages.

1. [ ] Deploy on your public Github page, not Github Enterprise.
1. [ ] Present a working browser game, built by you, hosted and deployed on GitHub Pages.

### Version Control

Demonstrate using version control by:
1. [ ] Sharing your work through a git repository hosted on Github.
1. [ ] Making frequent, cohesive commits dating back to the **first day**

1. [ ] Sharing your work through a git repository hosted on Github.
1. [ ] Making frequent, cohesive commits dating back to the **first day**
of the project week.

### Documentation

Produce documentation in the form of a **README**, which must:

1. [ ] Pin your repository on GitHub as a Popular Repository
1. [ ] Complete the repository `Description` field and `Website` field with a meaningful sentence description of the application and link to the live URL
![github image](https://git.generalassemb.ly/storage/user/3667/files/beae41ae-aaaa-11e7-8867-63958d376a0b)
@@ -25,6 +31,7 @@ Produce documentation in the form of a **README**, which must:
1. [ ] Link to wireframes and user stories.

### Technical Specifications

1. [ ] Use a custom game engine written by you.
1. [ ] Be a single-page application, no browser refresh.
1. [ ] Render a game board in the browser.
@@ -35,32 +42,35 @@ Produce documentation in the form of a **README**, which must:
1. [ ] Use AJAX for interacting with a provided API.

### API Specifications
1. [ ] Create new games on the server. (CREATE)
1. [ ] Update a game by storing new moves. (UPDATE)
1. [ ] Visually display the results of retrieving game statistics, such as total games won by a user. (READ)
1. [ ] Give feedback to the user after each action.

1. [ ] Create new games on the server. (CREATE)
1. [ ] Update a game by storing new moves. (UPDATE)
1. [ ] Visually display the results of retrieving game statistics, such as total games won by a user. (READ)
1. [ ] Give feedback to the user after each action.

### Auth Specifications
1. [ ] Signup with email, password, and password confirmation.
1. [ ] Login with email and password.
1. [ ] Logout when logged in.
1. [ ] Change password with current and new password.
1. [ ] Signup and Signin must only be available to not signed in users.
1. [ ] Logout and Change password must only be available to signed in users.
1. [ ] Give feedback to the user after each action's success or failure.
1. [ ] All forms must clear after submit success or failure

1. [ ] Signup with email, password, and password confirmation.
1. [ ] Login with email and password.
1. [ ] Logout when logged in.
1. [ ] Change password with current and new password.
1. [ ] Signup and Signin must only be available to not signed in users.
1. [ ] Logout and Change password must only be available to signed in users.
1. [ ] Give feedback to the user after each action's success or failure.
1. [ ] All forms must clear after submit success or failure

### DO NOT!!

Your app **must not**:
1. [ ] Delete your repository at any time or start over.
1. [ ] Rely on refreshing the page for any functionality.
1. [ ] Have any user-facing bugs.
- [ ] Display non-functional buttons, nor buttons that do not successfully complete a task.
- [ ] Show actions at inappropriate times (example: sign out button when not signed in).
- [ ] Forms not clearing at appropriate times (example: sign up form not clearing after success).
1. [ ] Allow the same game to be played after a player has won or tied.
1. [ ] Allow players to move in the same square more than once.
1. [ ] Change players when an invalid move is made.
1. [ ] Use alerts for anything.
1. [ ] Display errors or warnings in the console.
1. [ ] Display debugging messages in the console.
1. [ ] Delete your repository at any time or start over.
1. [ ] Rely on refreshing the page for any functionality.
1. [ ] Have any user-facing bugs.
- [ ] Display non-functional buttons, nor buttons that do not successfully complete a task.
- [ ] Show actions at inappropriate times (example: sign out button when not signed in).
- [ ] Forms not clearing at appropriate times (example: sign up form not clearing after success).
1. [ ] Allow the same game to be played after a player has won or tied.
1. [ ] Allow players to move in the same square more than once.
1. [ ] Change players when an invalid move is made.
1. [ ] Use alerts for anything.
1. [ ] Display errors or warnings in the console.
1. [ ] Display debugging messages in the console.
@@ -7,25 +7,29 @@ Always be commiting. Deploy early and often.
Here's a rough sketch of what you should do and in what order:

### Planning

1. [ ] Review [game-project-scope-study](https://git.generalassemb.ly/ga-wdi-boston/game-project-scope-study)
1. [ ] User Stories
1. [ ] Review [project-planning-wireframes-practice](https://git.generalassemb.ly/ga-wdi-boston/project-planning-wireframes-practice)
1. [ ] Wire Frames

### Set Up

1. [ ] [Download Browser Template](https://git.generalassemb.ly/ga-wdi-boston/browser-template)
1. [ ] Create a Github Repository
1. [ ] [Deploy to Github Pages](https://git.generalassemb.ly/ga-wdi-boston/gh-pages-deployment-guide)

### Game Engine

1. [ ] Create Empty Board in JS
1. [ ] Create Current Player
1. [ ] Add Current Player to Board
- [ ] Current Player rotates between x and o
- [ ] Can not choose already occupied spots
- [ ] Current Player rotates between x and o
- [ ] Can not choose already occupied spots
1. [ ] Check Board for Winner

### Game UI

1. [ ] Design a game board
1. [ ] Add a click handler for when a space on the game board is clicked
1. [ ] If the user clicks on a valid space then add their X or O
@@ -37,6 +41,7 @@ Here's a rough sketch of what you should do and in what order:
1. [ ] Add messaging for the user when the game is over (win or draw)

### Authentication

1. [ ] Review [api-token-auth](https://git.generalassemb.ly/ga-wdi-boston/api-token-auth)
1. [ ] Sign Up (curl then web app)
1. [ ] Sign In (curl then web app)
@@ -45,12 +50,14 @@ Here's a rough sketch of what you should do and in what order:
1. [ ] All API calls have success or failure messages

### Game API
1. [ ] Review [query-ajax-post](https://github.com/ga-wdi-boston/jquery-ajax-post)

1. [ ] Review [jquery-ajax-crud](https://git.generalassemb.ly/ga-wdi-boston/jquery-ajax-crud)
1. [ ] Create Game, start new game (curl then web app)
1. [ ] Update Game, play the game (curl then web app)
1. [ ] Get Games (curl then web app)

### Final Touches

1. [ ] README
2. [ ] Troubleshoot/Debug
3. [ ] Style
1. [ ] Troubleshoot/Debug
1. [ ] Style

0 comments on commit a3a8477

Please sign in to comment.