# @fishka/seqio 中文文档

规范地址：https://npmcn.com/package/%40fishka/seqio/

版本：0\.10\.0
npm 元数据更新时间：2026-07-21T23:35:37.260Z
中文译文更新时间：2026-11-14T20:27:57.115Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40fishka/seqio
原文对照：https://npmcn.com/package/%40fishka/seqio/?lang=original
项目主页：https://github.com/fishkabio/seqio#readme
源码仓库：https://github.com/fishkabio/seqio

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：1.1 MB，16 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- Node.js 要求：\>=16
- 运行依赖：0 个
- 首次发布：2026-05-29T14:42:58.266Z
- 最新版本发布：2026-07-21T23:35:37.107Z
- 近 30 天下载量：6414（2026-10-15 至 2026-11-13，npm 官方下载统计）
- 已发布版本数：15（近 12 个月 15 个）

## 中文简介

为生物信息学数据对文件解析器和作者进行排序

## 安装

```sh
npm install @fishka/seqio
```

也可以使用：`pnpm add @fishka/seqio`、`yarn add @fishka/seqio`、`bun add @fishka/seqio`

## README

# @fishka/seqio (英语)

部分 [菲什卡.比奥](https://fishka.bio/) ——基于自由浏览器的生物信息学工具.

浏览器-和节点相兼容的排序文件 I/O.

当前 API :

-   **银行家协会** (单位:千美元)`.ab1` 编号 : `.abi`解析器、打出色谱视图、原始读取器/写作器, 和变异的助手.
-   **FASTA / FASTQ /. 夸尔** 带有 Phred+33 质量编码的文本写入器.

计划:常设委员会和FASTA/FASTQ读者.

## 安装

```sh
npm install @fishka/seqio
```

## 银行家协会

使用 `parseAbif()` 当你想要一个即时的色谱图,基调调,和 来自 a 的元数据 `.ab1` 文档.

```ts
import { parseAbif } from '@fishka/seqio/abif';

const result = parseAbif(uint8ArrayOrArrayBuffer, 'sample.ab1');

result.baseCalls?.sequence; // preferred called sequence, upper-cased
result.baseCalls?.confidences; // PCON quality scores
result.baseCalls?.positions; // PLOC peak positions
result.baseCallVariants; // all PBAS/PCON/PLOC versions found
result.chromatogram.data9To12.A; // A trace mapped through FWO_
result.metadata.sampleName;
```

使用 `readAbif()` 编号 : `writeAbif()` 当您需要进入或想要进入 在往返期间保留未知的供应商标签.

```ts
import { readAbif, writeAbif, findEntry, upsertEntry } from '@fishka/seqio/abif';
import { setAveragePeakSpacing, setConfidences, setPositions, setSequence } from '@fishka/seqio/abif';

const file = readAbif(bytes);

findEntry(file, 'SMPL', 1);
const commentPayload = new TextEncoder().encode('basecalled');
upsertEntry(file, 'CMNT', 1, commentPayload, {
  elementType: 2,
  elementSize: 1,
  elementCount: commentPayload.byteLength,
});

setSequence(file, 'ACGT...');
setConfidences(file, [40, 38, 41]);
setPositions(file, [13, 25, 38]);
setAveragePeakSpacing(file, 12.5, 'my-basecaller');

const out = writeAbif(file);
```

## FASTA / FASTQ /. 夸尔

```ts
import { formatFasta, formatFastq, formatQual, hasUsableQuality } from '@fishka/seqio';

const record = { id: 'sample.ab1', sequence, qualities };

formatFasta(record); // wrapped at 60 residues by default
formatFasta(record, { lineWidth: 0 }); // single sequence line

if (hasUsableQuality(qualities)) {
  formatFastq(record); // Phred+33, scores clamped to [0, 93]
  formatQual(record);
}
```

## API 密码

-   `parseAbif(input, fileName?)`
-   `readAbif(bytes)`, (中文(简体) ), `writeAbif(file)`, (中文(简体) ), `findEntry()`, (中文(简体) ), `findEntries()`, (中文(简体) ), `upsertEntry()`
-   `getSequence()`, (中文(简体) ), `getConfidences()`, (中文(简体) ), `getPositions()`, (中文(简体) ), `getDataChannel()`, (中文(简体) ), `getChannelMap()`, (中文(简体) ), `getSamplingRate()`
-   `setSequence()`, (中文(简体) ), `setConfidences()`, (中文(简体) ), `setPositions()`, (中文(简体) ), `setAveragePeakSpacing()`, (中文(简体) ), `ensureRawDataChannels()`
-   `formatFasta()`, (中文(简体) ), `formatFastq()`, (中文(简体) ), `formatQual()`, (中文(简体) ), `hasUsableQuality()`

图书馆使用 `Uint8Array` 财务报告和审定财务报表 `DataView`,没有节点 `Buffer` 依赖性. ABIF 写入是无意义而非字节的布局保存: 保留了未知条目,但有效载荷可能会被重新包装并被固定.

## 许可证

麻省理工学院

## 常见问题

### @fishka/seqio 是什么？

为生物信息学数据对文件解析器和作者进行排序

### 如何安装 @fishka/seqio？

在项目目录运行 npm install @fishka/seqio，或使用 pnpm add / yarn add / bun add。

### @fishka/seqio 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @fishka/seqio 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @fishka/seqio 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=16。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @fishka/seqio 可以商用吗？

@fishka/seqio 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @fishka/seqio 的下载量有多少？

根据 npm 官方下载统计，@fishka/seqio 在 2026/10/15 – 2026/11/13 这 30 天内被下载 6,414 次，日均约 214 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @fishka/seqio 还在维护吗？

最新版本 0\.10\.0 发布于 2026/07/22（3 个月前）；至今共发布 15 个版本，其中过去 12 个月发布了 15 个；首次发布于 2026/05/29。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

