GithubHelp home page GithubHelp logo

winternet / quiz Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 0.0 390 KB

This project is no longer maintained. Basic quiz webapp optimized for mobile devices

License: MIT License

JavaScript 68.40% CSS 19.45% HTML 12.15%
quiz nodejs quizapp quiz-game expressjs websocket mobile games quiz-example quizzes

quiz's Introduction

Quiz

Please note that this project is no longer maintained.

The quiz is made for mobile devices as clients. Select the next question using a simplistic admin ui that also renders crude bar charts of the answers' distribution. To bootup the quiz as fast as possible, a captive portal could be used to direct the clients to the quiz.

quiz-unselected quiz-selected

Pre-requisites

The quiz is based on node.js (apt-get install nodejs). To install all dependencies browse to the project folder and issue npm install. See package.json for the dependencies.

Quick start

Enter the questions in the given format under game.json. Bootup the server using node server.js. Clients browse to localhost:8080/, the admin to localhost:8080/admin (admin/secret). To push the first question to all connected clients, select the Answering mode and press Next as admin. To query the statistics select Statistics mode. Below the controls renders a bar chart visualising the distribution of the choices.

Credentials

The credentials are admin/secret by default and can be configured within server.js

Ports / HTTPS

Ports are 8080 and 8443 by default. If https protocol is needed the server certificate and server key need to be placed under /ssl/server.key and ssl/server.cert, otherwise comment the https protocol in server.js

Cookies and Timeouts

To prohibit the clients from choosing more than once, a client cookie will be set. The timeout is also configured in the client.js. For a more elaborated version, the clients would have to generate a uuid and register on the server which in turn controls the choices and timeouts of each client. Feel free to implement...

Screen-Lock

To prohibit activation of the screen lock, the client.js uses a dirty hack called NoSleep.js.

Admin UI

Questions

quiz-admin

Statistics

quiz-stats

quiz's People

Contributors

winternet avatar

Stargazers

 avatar  avatar

Watchers

 avatar

quiz's Issues

License missing

Hi! Thanks for publishing this project, it could be very useful for something I'm working on.

It would be great if you could add a license (e.g. MIT license) so that others are allowed to use it, too.

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.