Giter VIP home page Giter VIP logo

kahoot-api's Introduction

Kahoot API

An API for the kahoot.it quiz platform. This release is intended for educational purposes only. The API is pretty outdated and I won't be supporting it any longer. It's still a good source for anyone looking to unravel the inner workings of Kahoot.

Installation

Install with npm or yarn

yarn add kahoot-api
# or
npm install kahoot-api

Usage

To get you started, here is a basic example of the Player authentication flow:

import { Session, Adapters } from 'kahoot-api';

const session = new Session(000000 /** pin */, /** optional cors proxy, url string */)
session.openSocket() //Connect
  .then(socket => {
    const player = new Adapters.Player(socket); //Create player class
    player.join('test') //Join with name
      .then(() => {
         console.log('Success!');
      });
  });

For usage please refer to the documentation

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

License

MIT

kahoot-api's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

kahoot-api's Issues

Challenge solving is extremely unreliable

The solve function in the Helpers class really needs a rewrite. The modulo extraction is fully broken and the splitting is just hacky. Looking at a regex implementation now!

Hello There

I see that there is no documentation for these project, how do we go about the usage of this API.

How does it work?

The requested module does not provide an export named 'Session'

Hey, hope all is going well.

I am trying to use your API to make my own tool, like omegaboot.

I use the default code on NPM, with a few modifications to the import path, but get this error:

The requested module './node_modules/@omegaboot/kahoot-api/dist/index.js' does not provide an export named 'Session'

What am I doing wrong? I have NEVER used JS import before, sorry.

Thanks!

Add more methods!

  1. KahootHelper.authenticate(username, password) -> Promise<err, bearer-token>
  2. KahootHelper.search(term, token) -> Promise<err, answers>

Stacked promises are messy

I personally think nested promises are extremely messy. I think if the code was changed to use call backs it would be a lot easier for someone using this package (and yes I do know changing from promises to call backs takes a lot of work).

Rewrite to support new patches

Kahoot is working on patching most, if not all the vulnerabilities that this API uses for smooth functioning. It will be rewritten to work around these issues, which will cause join speeds to be a lot slower. There might be some more research that can be done to improve the load times tho, but for now we have to play by their rules for a bit.

Lack of Releases

There hasn't been a release on GitHub since 0.2.1 Alpha. I would like to use the client-side version of this package but there isn't a working one I can find.

Quiz?

Can you please post some examples on how to make the bots answer questions? i can't wrap my head around it

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.