Giter VIP home page Giter VIP logo

js-quiz's Introduction

JS-Quiz

Group 5 is:

Group issue
Backlog
Project Board
Discussion
Development strategy


FROM STATE

Project

This week's project is to write a JS Quiz. You'll be given starter code with:

  • a suggested initial state for your quiz
  • a logging tool
  • testing support for /logic and /views
  • CI for testing & documentation when opening PRs to master or main
  • an example project in the repo (go ahead and delete the code when you start your project)

The rest is up to you! Just be careful when scoping your project, it's better have a simple working quiz than a complicated broken one.


This is the js-quiz-starter FROM HYF

collapse/expand

Getting Started

This repository comes with some nice extras like testing, documentation and CI, but in it's heart it's just an HTML/CSS/JS website boilerplate.

Development

To run this project locally you will need to open index.html in your browser using a local server. LiveServer, http-server, study-lenses, or any other local static server will work.

Deployment

Push your changes, turn on GitHub pages, that's all!

When your project is deployed to GitHub pages there will be buttons rendered at the top of your page to validate your HTML, CSS, accessibility and spelling, plus a link back to the project repository.

Installing Dependencies

There are no dependencies needed to run the website, everything is prepared to work with vanilla JavaScript. However, if you want to run tests or if you want to generate documentation for your project you will need to install the development dependencies:

  • npm install

Documentation

To document your project you will need to write a JSDoc comment for each function in the /handlers, /listeners and /logic. You will also want to add an entry to the JSDoc in /data.js for each property you store in the object.

The JSDoc comments you write in the /src folder will be used to re-write the DOCS.md file each time you run npm run document from the root of your project.

Testing

After installing the dev dependencies you can start writing and running tests for your .js files. Careful! In this project starter you can only test code that does not interact with the DOM, so only the /logic and /view functions will be testable (/view functions will be tested in Node.js using jsdom). There are two options for running tests:

  • Individually: You can run the tests in a single .spec.js using the VSCode debugger. Open the spec file you want to run, open the debugger pane, select the "current .spec.js file" option, then start debugging!
  • All at Once: You can also run every .spec.js in the /src directory at the same time using npm run test. When you run the npm run test command all test results will be logged to the console, and a report file will be generated next to each spec file. These report files will be helpful when reviewing PRs to the main/master branch.

Continuous Integration

This repository comes with a GitHub Action to re-build the documentation and run all the tests whenever you push to master/main, and each time you open a PR to master/main. You don't need to do anything, it works!

Having this CI action means that your master branch will always have the most up-to-date documentation, and that you can easily check test results when reviewing Pull Requests.

js-quiz's People

Contributors

bermarte avatar businan avatar dependabot[bot] avatar tahminarasoli avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar  avatar

js-quiz's Issues

refactor the code

refactor

The code is messy because the group didn't follow the correct procedure

Refactor and clean-up the code of the project.

  • clean-up the code
  • fix bugs
  • refactor the code

Refactor and change the review.html page

  • change a bit the look of the review page
  • remove the radio buttons
  • separate the questions with a horizontal ruler

Document the functions

  • write the documentation in the code (JSDoc)
  • use logger function

Try to implement the views

  • see if it is possible to separate the views

modify review section

  • need a separator for questions.
  • the radio buttons are no more useful in this section.

changed style

according to our project main scope, we have just a simple CSS style.

  • body
  • text
  • button

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.