npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

cli-prep

v1.0.1

Published

A fun and interactive command-line interview preparation game to test your programming knowledge with 80+ questions across multiple categories!

Readme

🎯 CLI Prep Game

A fun and interactive command-line interview preparation game to test your programming knowledge!

Version Node

🚀 Features

  • 80+ Programming Questions across multiple categories
  • Personalized Feedback with performance analysis
  • Category-based Analytics to identify strengths and weaknesses
  • Randomized Questions for unique experiences every time
  • Beautiful CLI Interface with colors, animations, and emojis
  • Flexible Quiz Length - choose from 1 to 80+ questions
  • Smart Suggestions for improvement based on your performance

📚 Question Categories

  • 🧮 Algorithms - Time complexity, sorting, searching
  • 📊 Data Structures - Arrays, stacks, queues, trees, graphs
  • 📜 JavaScript - ES6+, closures, promises, DOM manipulation
  • 🌐 Web Development - HTTP, CSS, HTML, APIs
  • 🗄️ Database - SQL, normalization, indexing
  • 🏗️ System Design - Load balancing, caching, scaling
  • 🧪 Testing - Unit testing, TDD, integration testing
  • 🔧 Programming Concepts - OOP, SOLID principles, design patterns
  • 📦 Node.js & React - Modern JavaScript frameworks
  • 🔀 Git - Version control and collaboration

🛠️ Installation

Global Installation (Recommended)

npm install -g cli-prep

Local Installation

git clone https://github.com/Mohitpanjikar/command-line-interview-prep.git
cd command-line-interview-prep
npm install

🎮 Usage

If installed globally:

cli-prep

If running locally:

npm start
# or
node index.js

🎯 How to Play

  1. Enter your name when prompted
  2. Choose the number of questions you want to practice (1-80+)
  3. Answer multiple-choice questions using arrow keys
  4. Get instant feedback on each answer
  5. Review your performance with detailed analytics at the end

📊 Performance Levels

  • 🏆 Outstanding (90-100%) - You're a programming wizard!
  • 🌟 Excellent (80-89%) - Great job, solid understanding!
  • 👍 Good (70-79%) - Well done, you're on the right track!
  • 📚 Fair (60-69%) - Nice effort, room for improvement
  • 💪 Needs Improvement (40-59%) - Keep going, everyone starts somewhere
  • 🚀 Keep Learning (0-39%) - Don't give up, programming is a journey!

🎨 Screenshots

Welcome Screen

Welcome to the CLI Prep Game!
   ____   _       ___     ____                        
  / ___| | |     |_ _|   |  _ \   _ __    ___   _ __  
 | |     | |      | |    | |_) | | '__|  / _ \ | '_ \ 
 | |___  | |___   | |    |  __/  | |    |  __/ | |_) |
  \____| |_____| |___|   |_|     |_|     \___| | .__/ 
                                               |_|    

🎯 Test your knowledge with 80+ programming questions!
📚 Categories: Algorithms, Data Structures, JavaScript, Web Dev, and more!

Question Example

📂 Category: JavaScript
? Question 5/10: What is the difference between == and === in JavaScript?
❯ == checks type, === checks value
  == checks value, === checks type and value
  No difference
  === is deprecated

Results Dashboard

============================================================
🎯 QUIZ RESULTS FOR JOHN
============================================================
📊 Final Score: 8/10 (80.0%)
🏅 Performance Level: Excellent 🌟

💬 Personal Feedback:
   Great job, John! You have a solid understanding!

📈 Category Analysis:
  JavaScript: 3/4 (75%) - Good 👍
  Algorithms: 2/2 (100%) - Strong 💪
  Data Structures: 2/3 (67%) - Good 👍
  Web Development: 1/1 (100%) - Strong 💪

💡 Suggestions for Improvement:
   1. Focus on the areas where you missed questions
   2. Practice more complex problem-solving scenarios
   3. Review system design concepts

🏗️ Project Structure

cli-prep/
├── index.js          # Main game logic and flow
├── questions.js       # Question bank (80+ questions)
├── feedback.js        # Feedback and analysis functions
├── package.json       # Package configuration
└── README.md         # This file

🔧 Dependencies

  • chalk - Terminal styling and colors
  • chalk-animation - Animated text effects
  • figlet - ASCII art text
  • gradient-string - Gradient colored text
  • inquirer - Interactive command line prompts
  • nanospinner - Loading spinners

🎯 Perfect For

  • 📚 Interview Preparation - Practice common technical questions
  • 🧠 Knowledge Assessment - Test your programming concepts
  • 🏫 Learning & Education - Reinforce programming fundamentals
  • 🎮 Fun Coding Practice - Gamify your learning experience
  • 👥 Team Building - Challenge your colleagues
  • 📈 Skill Tracking - Monitor your progress over time

🚀 Coming Soon

  • 🔥 Difficulty levels (Beginner, Intermediate, Advanced)
  • ⏱️ Timed challenges and speed rounds
  • 📊 Progress tracking and statistics
  • 🏆 Achievement system and badges
  • 📱 Category-specific training modes
  • 💾 Save progress and history
  • 🌐 Multi-language support

🤝 Contributing

Contributions are welcome! Here's how you can help:

  1. Add Questions - Submit new programming questions
  2. Improve Categories - Suggest new question categories
  3. Enhance Features - Add new game modes or functionality
  4. Fix Bugs - Report and fix any issues
  5. Documentation - Improve docs and examples

Adding Questions

Questions are stored in questions.js. Each question follows this format:

{
    question: 'Your question here?',
    choices: [
        { name: 'Option A', value: 'Option A' },
        { name: 'Option B', value: 'Option B' },
        { name: 'Option C', value: 'Option C' },
        { name: 'Option D', value: 'Option D' }
    ],
    correctAnswer: 'Option B',
    category: 'JavaScript'
}

Acknowledgments

  • Thanks to all contributors who helped build the question bank
  • Inspired by the need for fun, interactive interview preparation
  • Built with love for the programming community

📞 Support

Having issues? Here's how to get help:

  • 🐛 Bug Reports - Open an issue on GitHub
  • 💡 Feature Requests - Suggest new features
  • Questions - Ask in discussions
  • 📧 Contact - Reach out via email

Happy Coding! 🚀

Made with ❤️ for developers by developers