GithubHelp home page GithubHelp logo

flashcards-starter's Introduction

FlashCards Starter Kit

Contributors

Orlando Murcio

Context

The goal of this project is to being able to practice OOP while using the mocha framework in conjuction with the chai testing library to write the test first and then write the implementation class to pass each test.

Technologies used:

* JavaScript
* Terminal
* GitHub

Challenges

* Atomic commits (capitalizing the first letter)
* Writting te test before the implementation
* Connectiong between classes
* Knowing where to instantiate the `game` class

Wins

  • Being able to work through the logic of the game
  • Make use of the testing librarie and run the implementation test using the terminal
  • Having a functional game using the terminal
  • Using the project board * issues, labels and tickets* to keep track of my progress

Future Goals

  • Add timer to the project, so the user can know the length of the game
  • Add another deckof cards

In Action

Take 1

  • Playing through the game using the terminal; the user runs the node indes.js comand which initializes the game. After the game has been initialized the user uses the key up or down to select the answer from the 3 possible questions. Once the user pick the answer the terminal responds with a written feedback of 'correct' or incorrect' depending ig the answers is righ or wrong. Once the user finish all the cards in the deck a message with the percentage of the correct answers is displayed announcing the end of the round

    Playing through the game using hte terminal, the user runs the node indes.js comand which initializes the game. After the game is initializes the user uses the key up or down to select the answer from the 3 possible questions. Once the user pick the answer the terminal responds with a written feedback of 'correct' or incorrect' depending ig the answers is righ or wrong. Once the user finish all the cards in the deck a message with the percentage of the correct answers is displayed announcing the end of the round

Project directions

FlashCards specifications

Contribute to the project

If you want to contribute

  • clone the repository to your computer git clone <URL>
  • cd into the repository cd <repo-name>
  • create a new branch with git checkout -b <new branch name>
  • open your text editor and add or remove functionalities to the site.
  • git add and git commit -m "<your commit meessage>" to save the changes to your local repository
  • git push your changes
  • create a new pull request!

Project Managers

???

Fork This Repo

On the top right corner of this page, click the Fork button.

Setup

Clone down the forked repo (from your GitHub). Since you don't want to name your project "flashcards-starter", you can use an optional argument when you run git clone (you replace the [...] with the terminal command arguments):

git clone [remote-address] [what you want to name the repo]

Once you have cloned the repo, change into the directory and install the library dependencies. Run:

npm install

To verify that it is setup correctly, run npm test in your terminal. You should have 5 pending tests in your Card test file that show up.

Running node index.js from the root of your project should result in the following message being displayed in your terminal:

Node server running on port 3000

Where to Add Your Code

JavaScript

Create all of your feature code files in the src directory.

We will be using the module.exports and require syntax to share code across files.

How to View Your Code in Action

Once you are working through Iteration 3, you will want to start your server to test your functionality. In the terminal, run:

node index.js

flashcards-starter's People

Contributors

atos20 avatar dependabot[bot] avatar hannahhch avatar thatpamiam avatar

Watchers

 avatar

flashcards-starter's Issues

### create card class

  • A Card represents a single flashcard
  • Each card has an id, a question, possible answers, and a correct answer

#### Game class

iteration 3

start: method that starts everything

  • Creates Cards
  • Puts Cards in a Deck
  • Creates a new Round using the Deck
  • invokes printMessage to display the message in the CLI
  • invokes printQuestion to kick off our helper functions that allow interaction via the CLI

### round => takeTurn()

takeTurn: method that updates turns count, evaluates guesses, gives feedback, and stores ids of incorrect guesses

### round => endRound

endRound: method that prints the following to the console: ‘** Round over! ** You answered <>% of the questions correctly!’

### create Turns class

Your Turn class should meet the following requirements:
Instantiated with two arguments - a string (that represents a user’s guess to the question), and a Card object for the current card in play.

### class Deck

Create deck.js and deck-test.js
it should have an array of Card objects

### Project Set-up

  • fork project
  • start project board
  • run npm install
  • verify running npm test
  • run node index.js => node Node server running on port 3000
  • run npm run lint

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.