Code Monkey home page Code Monkey logo

playroom's Introduction

Memory

Memory (also known as Concentration) is a card game played with one or more players. Using a standard card deck (including both jokers) the players shuffle the deck and lay all of the cards face down on a surface and two cards are flipped face up over each turn. The object of the game is to turn over pairs of matching cards. Concentration can be played with any number of players or as solitaire. Wikipedia has a good description of the game.

Your challenge is to build Memory in the browser with the requirements below.

Guidelines

Setting Up

  1. Clone this repository
  2. Change the remote to a private github repository under your username
  3. Push code to that remote
  4. Develop

To Submit

  1. Add github user dylanbhughes as a collaborator to your private repository

The Game

Using the provided deck in data/deck.js:

  1. Shuffle the deck
  2. Display all 54 cards (jokers included) face down
  3. Clicking the back of a card should turn a card over
  4. Player can turn over 2 cards at a time
  5. When two cards are turned over:
    • if the number and color of the cards match, the player collects the pair and the cards are removed from the board
    • if the cards do not match, they turn back over and remain in position
  6. When a player has found all 27 pairs, the player should see a success message

Requirements

  1. One player can play one entire game
  2. Sensible tests (see @vue/test-utils)
  3. Clear commit messages & history
  4. Well-styled & readible cards

Note: I've given you a Vue app skeleton. If you wish, you can implement this with another framework (or no framework at all). If you choose to do this, please retain the src/deck.js file.

Bonus Points

  1. Animations for card flips
  2. Snapshot tests
  3. Mobile & tablet friendly
  4. Deploy App & add deployment instructions to README
  5. Reset Button that starts an in-progess game over from the beginning
  6. Track the score
  7. Multiple player support

Resources

Project setup

nvm install
npm install

Compiles and hot-reloads for development

npm run serve

Compiles and minifies for production

npm run build

Run your tests

npm run test

Lints and fixes files

npm run lint

Run your unit tests

npm run test:unit

Customize configuration

See Configuration Reference.

deployment

deployed on firebase at https://memory-201906.web.app/ make sure firebase cli tools are installed npm run build firebase init (choose histing, single page) - this has been done already! in firebase.json make sure dist is entered in : "hosting": { "public": "dist",...} check page with firebase serve enter "firebase deploy" into terminal when in root of this project directory to finally deploy

playroom's People

Contributors

zhen0 avatar dylanbhughes avatar

Watchers

James Cloos 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.