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

2dev

v0.1.3

Published

A simple web-based directory listing tool - example usage of remote terminal

Readme

2dev

一个简单的基于Web的目录查看工具,展示如何使用 pnpm workspace + Koa + React 构建可通过 npx 使用的CLI工具。

功能

  • 📁 显示当前目录的文件列表(排除隐藏文件)
  • 🌐 Web界面展示
  • 📦 可通过 npx 直接使用

快速开始

使用 npx(发布到npm后)

npx 2dev

然后访问 http://localhost:3000

全局安装

npm install -g 2dev
# 或
pnpm install -g 2dev

# 使用
2dev

开发

安装依赖

pnpm install

开发模式

开发模式下,前端和后端分别运行:

  • 前端:Vite开发服务器(默认端口5173)
  • 后端:Koa API服务器(默认端口3000)
  • 前端通过proxy访问后端API
# 同时启动前后端
pnpm dev

# 或分别启动
pnpm dev:frontend
pnpm dev:backend

构建

pnpm build

本地测试

# 构建并启动生产环境
pnpm build
pnpm start

访问 http://localhost:3000

发布到 npm

  1. 登录 npm

    npm login
  2. 修改包名(如果 2dev 已被占用) 编辑 package.json,修改 name 字段为可用的包名。

  3. 发布

    npm publish

    注意:发布时会自动执行 prepublishOnly 脚本构建项目。

  4. 测试发布的包

    npx your-package-name

项目结构

2dev/
├── packages/
│   ├── frontend/          # React + Vite前端
│   └── backend/           # Koa2后端API
├── bin/
│   └── cli.js            # CLI入口文件
├── pnpm-workspace.yaml   # pnpm workspace配置
└── package.json          # 根package.json(CLI配置)

技术栈

  • 前端: React 19 + Vite 7 + TypeScript
  • 后端: Koa 3 + @koa/router + TypeScript
  • 包管理: pnpm workspace
  • 构建工具: Vite (前端) + tsc (后端)

环境说明

  • 开发环境: 前后端独立运行,前端通过proxy访问后端
  • 生产环境: 后端托管前端dist静态资源,单一服务端口

API接口

  • GET /api/health - 健康检查
  • GET /api/files - 获取当前目录文件列表(排除隐藏文件)

License

MIT