Skip to content

Instantly share code, notes, and snippets.

View korzio's full-sized avatar

Alex Korzhikov korzio

View GitHub Profile
#!/usr/bin/env node
const program = require('commander')
const { description, version } = require('./package.json')
program
 .description(description)
 .version(version, '-v, - version')
 .parse(process.argv)
quizme
Usage: quizme [options]
Command-line quiz program
Options:
 -h, - help output usage information
program
 .command('start')
 .description('start a quiz')
 .action(() => {
  console.log('start')
 })
module.exports = {  
...require('./configure'),  
...require('./start'),
}
program
 .command('configure <url> [otherUrls...]')
 .action((url) => {
 configure({ questions: require(url) })
 })
[{ 
question: `What will be an output of the following JavaScript code?
 for (var i = 0; i < 10; i++) {
 setTimeout(function() {
 console.log(i)
 }, 1000)
 }`,
 options: [ 
'10 times 10',  
'9 times 9',  
const packageJSON = join(__dirname, '..', 'package.json')
const package = require(packageJSON)
function configure(state) { 
package.quizme = { ...state }
writeFileSync packageJSON, JSON.stringify(package, null, 2))
}
function read() { 
const { quizme = {} } = package 
const { configure, start } = require('./commands')
program
  .command('start')
.description('start a quiz')
  .action(start)
const { promisify } = require('util')
const prompt = require('prompt')
const get = promisify(prompt.get)
function start() {
prompt.start()
get(
questions
.map(({ question }, i) => ({ name: `${i}`, description: question }))
const inquirer = require('inquirer')
const questions = require(questionsFile)
.map(({
question,
options
}, i) => ({  
type: 'list',
message: question,
choices: options,
name: `${i}`,