Code Monkey home page Code Monkey logo

connect-four's Introduction

Connect Four

This repo is for people who want to work at Social Tables.

The goal is to make a really sweet Connect Four app.

Game Background

There are several variations of the game, but for this project let's use the basic Hasbro rules

Objectives for Project Completion

  • A user should be able to start a new game
  • A user should be presented with a game grid with 6 rows and 7 columns
  • Each game should have two players who have different color game pieces
  • Players should be able to alternate turns placing their game pieces
  • Players should only be able to place game pieces in valid grid slots
  • Whenever a player has won the game, a notification message should appear with the results and a way to start a new game

Guidelines

  • You are free to use whatever client side libraries you want.
  • The entire application interface should be a single page using index.ejs
  • We'll be judging your UI and design skills. Make it easy to play. Try to make it look good too, but we understand you have limited time.

Setup Instructions

  • We've created the backend server end points for you to interact with.
  • Make sure you have node.js installed. Find it here: nodejs.org
  • Launch the node.js game server by typing node app.js in your terminal
  • Navigate to localhost:3000 to view the Connect 4 app
  • Modify the index.ejs file to create the user interface for the game

API Basics

  • Refer to the code in game.js as your documentation on how to interact with the game server
  • Each game has a unique id uuid
  • The game board is represented by a 7x6 2D array
  • Making a request to /new will give you a new game id and clean grid
  • To place a piece, make a POST request to /save/:id and include the entire updated 2D array
  • Fair warning: You may encounter some warts whilst working with this API. First, try to work around them. If you find a show stopping bug, let us know!

Submission

  • Create a fork of the repo
  • Commit and push your code to your forked repo as many times as you want
  • Submit a pull request to the master branch when you're done. Congrats!

connect-four's People

Contributors

edkim avatar necaris avatar jmoss20 avatar kylehill avatar mcwhittemore avatar bpyser avatar

Watchers

James Cloos avatar Farishta Haider avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.