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

@fefeding/fterm

v0.1.4

Published

Web SSH 远程终端工具 - 支持 rz/sz 文件传输

Readme

fTerm

Web SSH 远程终端工具,支持 rz/sz 文件传输。

特性

  • Web SSH 终端:基于 xterm.js 的高性能终端体验
  • 本地 Shell 支持:通过 node-pty 提供原生本地 Shell 访问
  • 文件传输:支持 rz/sz (ZMODEM) 文件上传下载
  • 多会话管理:支持同时管理多个 SSH/本地 Shell 会话
  • 连接管理:可视化的连接配置管理(增删改查)
  • 桌面应用:支持 NW.js 打包为跨平台桌面客户端

截图

fterm 截图

技术栈

  • 前端:Vue 3 + TypeScript + Vite + Bootstrap 5 + xterm.js
  • 后端:Node.js + Express + WebSocket (ws)
  • SSH/PTY:ssh2 + node-pty
  • 构建工具:Vite + TypeScript + nw-builder

快速开始

安装

npm install -g @fefeding/fterm
# 或
pnpm add -g @fefeding/fterm

环境要求

  • Node.js >= 18
  • pnpm

安装依赖

pnpm install

开发模式

pnpm dev

启动后访问 http://localhost:9801

构建

# 构建前端 + 服务端
pnpm build

# 仅构建前端
pnpm run build-only

启动生产服务

全局安装后,使用 fterm CLI 命令:

# 启动服务(默认端口 9802)
sudo fterm start

# 停止服务
fterm stop

# 重启服务
fterm restart

# 查看版本
fterm -v

也可以直接通过 Node.js 启动:

node server.js

或者在项目目录下使用 npm 脚本管理:

# 启动服务
npm start

# 停止服务
npm stop

# 重启服务
npm restart

默认端口 9802,可通过 --portPORT 环境变量指定:

node server.js --port 3000

桌面应用(NW.js)

# 开发模式
pnpm nw:dev

# 构建各平台
pnpm nw:build        # 当前平台
pnpm nw:build:win    # Windows
pnpm nw:build:osx    # macOS
pnpm nw:build:linux  # Linux

项目结构

.
├── bin/              # CLI 入口
├── dist/             # 构建产物
├── public/           # 静态资源
├── scripts/          # 构建脚本
├── server/           # 服务端源码(TypeScript)
│   ├── model/        # 实体定义
│   ├── service/      # 业务逻辑
│   └── index.ts      # 服务端入口
├── src/              # 前端源码
│   ├── adapter/      # 数据适配层
│   ├── base/         # 基础模块
│   ├── components/   # Vue 组件
│   ├── platform/     # 平台入口
│   ├── service/      # 前端服务
│   ├── stores/       # Pinia 状态管理
│   ├── utils/        # 工具函数
│   └── views/        # 页面视图
├── view/             # HTML 模板
└── server.js         # 生产环境启动脚本

开发说明

服务端开发

服务端代码位于 server/ 目录,使用 TypeScript 编写。开发模式下 Vite 直接引用源码,无需手动编译。

前端开发

前端使用 Vue 3 Composition API + Pinia 进行状态管理,UI 框架为 Bootstrap 5。

连接配置

连接信息持久化存储在服务端本地文件中。

许可证

MIT