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 🙏

© 2026 – Pkg Stats / Ryan Hefner

linux-lab

v1.2.1

Published

linux-lab help you practise linux commands via a set of exercises.

Downloads

22

Readme

Linux-lab

UESTC-综合课程设计III-基于UNIX/Linux的自学系统

安装

1. 安装 Node.js

# Using Ubuntu
curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
sudo apt-get install -y nodejs

其他系统请查阅 通过包管理器方式安装 Node.js

2. 通过 npm 安装 linux-lab

npm i -g linux-lab

3. 直接运行

linux-lab

开发

首先安装 Node.js 环境

# 安装项目依赖
npm install
# 本地开发测试
npm start
# 编译
npm run build
# 运行测试
npm run test

ToDoList

  • [ ] 选择题题库
  • [ ] 填空题题库
  • [x] 固定难度模式
  • [ ] 自动难度模式
  • [x] 完成练习后打分并给出答案
  • [ ] 学习评分和统计结果

主要任务

  1. 编写一个在UNIX/Linux操作系统下的通用命令自主学习系统。为该自学系统建立的命令库中至少包含三种以上不同难度的的通用命令,每种难度至少包含30条以上的命令以及每条命令对应的功能描述。
  2. 程序运行时,用户可以在菜单上选择固定难度或自动难度两种难度模式之一。在固定难度模式下,无论用户回答正确或回答错误,都给出指定难度的题目。在自动难度模式下系统在用户连续答对或答错指定数量的题目后自动增加难度或降低难度。
  3. 用户在学习时,可以采用以下两种学习模式:根据所给出的命令形式选择该命令功能,或者根据指定的命令的功能来选择对应的命令内容。
  4. 程序运行结束时,系统给出该用户的学习评分和统计结果。
  5. 完成概要设计,注意模块划分,画出系统的总体结构图;
  6. 完成详细设计,画出主要功能模块的运行流程图;
  7. 完成代码编写,编程语言和开发工具可以任选;
  8. 进行系统测试,程序运行时能够根据用户输入的菜单选项而运行在不同的难度和不同的学习模式下,特别是能够在自动难度模式下,根据使用者的学习正确率而自动提高或降低难度级别。程序结束时能够给出用户学习时的统计信息,该统计信息包含用户对不同难度题目的正确率,以及同一题目的回答正确率等内容。统计信息所包含的内容由用户进入程序时的菜单选择来设定。
  9. 系统应该能够稳定可靠地运行,界面简洁大方;
  10. 最后的设计报告需体现小组成员的分工,并说明每位组员独立完成的工作部分。

todo

题库难度梯度

题目分类=>人工划分难度=>

自动难度模式演示 连续答对/答错 echo 难度提升

字符串匹配的 judge 不如解析式合理 优先保证演示效果,对特例进行特殊处理,在演示的时候使用

统计不同知识点的掌握情况,不同难度的知识点掌握情况