Security News
tea.xyz Spam Plagues npm and RubyGems Package Registries
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
easy-trivia
Advanced tools
Readme
Easy Trivia is a small, simple and fast wrapper for Open Trivia Database - A Free to use, user-contributed trivia question database. Built with TypeScript, works with VanillaJS.
Join the Discord for updates: https://discord.gg/wtwM4HhbAr
discord-trivia
is almost ready: https://github.com/Elitezen/discord-trivia
Support me: https://www.paypal.com/paypalme/alejandromuratalla
View the list of changes in Easy Trivia 2.1.2:
https://github.com/Elitezen/easy-trivia/wiki/Changelog
Ensure you are using Node version 14 or higher and that your enviroment contains the https
module.
npm i easy-trivia
The following examples make use of the Async/Await syntax. Ensure you are inside an async function, otherwise use promise callbacks.
You can provide QuestionOptions
to describe the type of questions you want to recieve.
import { Category, getQuestions } from 'easy-trivia';
const questions = await getQuestions({
amount: 50, // 1 - 50
difficulty: 'easy', // or 'medium' or 'hard'
type: 'multiple', // or 'boolean (true/false)
category: Category.allNames.SCIENCE_COMPUTERS
});
[
{
value: 'What is the code name for the mobile operating system Android 7.0?',
category: 'Science: Computers',
type: 'multiple',
difficulty: 'easy',
correctAnswer: 'Nougat',
incorrectAnswers: [ 'Ice Cream Sandwich', 'Jelly Bean', 'Marshmallow' ],
allAnswers: [ 'Nougat', 'Jelly Bean', 'Marshmallow', 'Ice Cream Sandwich' ],
checkAnswer: [Function: checkAnswer]
}
...
]
You can generate a category class by providing a CategoryResolvable which includes a category's name or id. An instance of Category will allow you to fetch category data and questions relating to the provided resolvable.
let myCategory = new Category(9);
myCategory = new Category('GENERAL_KNOWLEDGE');
myCategory = new Category(Category.allNames.GENERAL_KNOWLEDGE);
const data = await myCategory.getData();
{
id: 9,
name: 'General Knowledge',
questionCounts: {
total: 298,
forEasy: 116,
forMedium: 123,
forHard: 59
}
}
const questions = await myCategory.fetchQuestions({
amount: 1,
difficulty: 'hard'
});
// Same outputs as getQuestions()
You can always get information relating to a category by simply passing a resolvable into getQuestions()
and getCategoryData()
getQuestions({
category: 9
});
getCategoryData('GENERAL_KNOWLEDGE');
// Same as myCategory.fetchQuestions() and .getData()
A session ensures you do not get duplicate questions.
import { Categories, Session, getQuestions } from 'easy-trivia';
const session = new Session();
await session.start();
const batch1 = await getQuestions({
amount: 10,
category: Category.random(),
difficulty: 'hard',
session
});
const batch2 = await getQuestions({
amount: 10,
category: Category.random(),
difficulty: 'hard',
session
});
const completeBatch = [...batch1, ...batch2]; // All unique!
session.end();
Note: In respect to the API, it is recommended you generate and save 1 session token for use when testing.
Documentation has been moved to a GitHub Wiki page:
https://github.com/Elitezen/easy-trivia/wiki/Documentation
Any tip is greatly appreciated 😀 https://www.paypal.com/paypalme/alejandromuratalla
FAQs
A wrapper for the Open Trivia Database API. Built with TypeScript, works with VanillaJS.
The npm package easy-trivia receives a total of 0 weekly downloads. As such, easy-trivia popularity was classified as not popular.
We found that easy-trivia demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
Security News
As cyber threats become more autonomous, AI-powered defenses are crucial for businesses to stay ahead of attackers who can exploit software vulnerabilities at scale.
Security News
UnitedHealth Group disclosed that the ransomware attack on Change Healthcare compromised protected health information for millions in the U.S., with estimated costs to the company expected to reach $1 billion.